Шаг 1.Оставляем без изменения.КнопкаДалее

ЛАБОРАТОРНАЯ РАБОТА 8.1

СПРАВОЧНИКИ

 

Для работы с некоторым множеством значений в системе используются объекты типа «Справочник». Обычно справочниками являются списки материалов, товаров, организаций, валют, сотрудников и др. Структура справочника определяет состав хранимой информации и настраивается в Конфигураторе. Под структурой понимаются в первую очередь состав реквизитов и табличных частей справочника. В более широком смысле в понятие структуры справочника включают тип и длину кода, длину наименования, количество уровней иерархии и т.д.

 

1. Знакомство со справочниками начнем с создания справочника «ФизическиеЛица». Для создания нового справочника необходимо выполнить щелчок правой клавишей мыши на ветви «Справочники», в открывшемся контекстном меню выбрать «Добавить».

(Следует отметить, что подобным образом создаются все объекты конфигурации.).

После этого откроется окно конструктора создания справочника:

- на первой закладке Основные необходимо определить имя и синоним справочника ФизическиеЛица и Физические лица. Имя поля не может начинаться с цифры,, в этом поле могут содержаться буквы, цифры, знаки подчеркивания, но не могут присутствовать пробелы. Поле Синоним – это название объекта, которое видит пользователь. В этих полях допустим ввод пробелов.

- закладка Иерархия.

Список элементов справочника в системе 1С:Предприятие может быть иерархическим (или многоуровневым) и линейным. Например, использование линейного вида справочника в справочнике содержащем номенклатурные позиции не всегда удобно (как с точки зрения работы при подборе, так с точки зрения получения отчетности), т.к. здесь представлено большое количество номенклатуры. Использование иерархических справочников позволяет сгруппировать элементы справочника по какому-либо признаку с нужной степенью детализации.

Иерархический справочник может быть двух видов:

• Элементы и группы

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

• Только элементы

Во втором случае иерархический справочник состоит только из элементов. Любой элемент может выполнять функцию группы, т.е. он может быть родительским элементом для других элементов этого же справочника. Например, по такому принципу можно организовать справочник Подразделения. В любой момент времени какой-нибудь отдел может быть разделен внутри себя на несколько подотделов, и отразить это в справочнике не составит никакого труда. Другой пример — справочник Районы, который отражает территориальное деление города. Элементы верхнего уровня представляют административные округа, на втором уровне содержатся районы, на третьем уровне — микрорайоны.

Главное отличие этих двух видов иерархического справочника заключается в следующем:

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

• во втором случае справочник содержит информацию о сходных сущностях одной природы, но разного уровня детализации, например, отдел и подотдел, район и микрорайон.

 

По умолчанию количество уровней иерархии не ограничено, при желании можно отметить флаг «Ограничить количество уровней иерархии» и выставить это количество.

На закладке Иерархия ничего не устанавливаем, т.е. справочник ФизическиеЛица будет без иерархии.

- закладкаВладельцы

Между справочниками может быть установлено отношение подчиненности. В этом случае каждый элемент подчиненного справочника будет связан с одним из элементов справочника владельца. Часто можно сказать, что элементы одного справочника принадлежат элементам другого. Например, в системе может быть справочник РасчетныеСчета, тогда его можно сделать подчиненным справочнику Контрагенты.Это означает, что Контрагент владеет расчетными счетами, а расчетные счета принадлежат контрагенту. В 1С: Предприятии 8.0 у справочника может быть несколько владельцев, то есть справочник может быть подчинен сразу нескольким справочникам или другим объектам.

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

Например, можно завести справочник ЗначенияДопСвойств,подчиненный плану видов характеристик ДопСвойства. Это означает, что в справочнике будет храниться перечень возможных значений для каждой характеристики, например, список цветов (красный, зеленый, синий) для такой характеристики, как Цвет, или для характеристики Тип разъема значения PS/2, USB и т.д.

Данный справочник не является подчиненным..

 

- закладка Данные.

На данной страничке определяется длина кода справочника, длина наименования (максимальная длина наименования 150 символов), состав реквизитов, состав табличных частей (их количество, состав реквизитов табличной части).

Обычно у любого справочника есть код и наименование.

Установите длину кода – 2 (2 символа отводятся на ввод кода). Длина кода влияет на максимальное количество элементов справочника. Для того, чтобы система могла быстро находить нужный пользователю элемент справочника, существует такой механизм поиска, как индексация. Система создает индексы. И чем больше длина кода, тем больше система затрачивает времени на переиндексацию. Поэтому максимально возможная длина оказывает сильное влияние на быстродействие системы в целом. Длина наименования – 50.

Основное представление - в виде наименования. Для пользователя гораздо удобнее видеть фамилию сотрудника, чем его уникальный код.

Для этого случая в справочниках существует возможность, кроме реквизитов код и наименование, создавать дополнительные реквизиты. Реквизиты позволяют хранить информацию о характеристиках справочника. В роли реквизитов выступают все остальные свойства, характеризующие элементы справочника.

Итак, в реквизит Наименование пользователь будет вводить фамилии. Имя и отчетсво будет вводить в другие реквизиты, соответственно Имя и Отчество.

Для данного справочника добавим реквизит «Имя». Для добавления можно воспользоваться кнопкой «Добавить» командной панели, расположенной непосредственно над окном реквизитов.

В открывшейся палитре свойств для добавляемого реквизита Имя необходимо ввести следующие данные:

- поле Имя – Имя

- поле Комментарий – имя физического лица

- полеИспользование - Для элемента

- поле Тип – Строка

- длина - 20

Те же данные введите и для реквизита Отчество.

Создайте реквизит Адрес: тип данных – строка, длина – 50.

С большинством из этих свойств уже приходилось сталкиваться, поясним следующие:

  • Использование. Возможные значения: Для элемента, Для группы, Для группы и элемента. Дело в том, что справочник может быть иерархическим (и при этом иметь иерархию групп и элементов), в этом случае он содержит «записи» двух видов: группы и элементы. В этом случае вы можете определить, к какому из видов (или к обоим) будет добавлен создаваемый реквизит.
  • Индексировать. Возможные значения: Не индексировать, Индексировать, Индексировать с доп. упорядочиванием. Индексирование ускоряет сортировку и отбор по данному реквизиту (необходимо для использования ряда методов). Индексирование с доп. Упорядочиванием отличается от Индексировать тем, что значения с одинаковыми индексами дополнительно упорядочиваются по основному представлению.

 

Табличная часть служит для хранения информации, которая меняется применительно для каждого элемента справочника. Например, для справочника ФизическиеЛица в табличной части можно хранить сведения о трудовой деятельности, а именно названия предприятий, где ранее работал сотрудник, занимаемые ранее должности и т.д. Число строк табличной части не может быть более 100 000.

 

- закладка Нумерация.

Флажок Контроль уникальности отслеживает, чтобы значения кода элементов справочника не совпадали. Желательно, чтобы всегда при работе этот флажок был активным.

 

- закладка Формы. Пользователь взаимодействует с реквизитами справочника через формы.

У справочника может быть любое количество форм пяти (максимально) видов.

Форма списка предназначена для отображения списка справочника (элементов, групп).

Формы выбора используется при выборе значения из справочника (обычно она создается как «урезанная» форма списка, в ней отображаются только те данные, которые необходимы для принятия решения о выборе интересующей записи, например при подборе в документы и т.д.).

Формы выбора группы и группы в нашем случае недоступны, так как в данном справочнике понятие группы не определено. Форма выбора группы предназначена для выбора группы из списка. Выбор группы может понадобиться, например, для отчета по товарам, который позволяет вывести не все товары, а только товары заданной группы. Эта форма также используется при интерактивном переносе элемента в другую группу. Форма группыотображает и позволяет редактировать сведения о группе справочника. Группы могут иметь другой состав реквизитов по сравнению с элементами.

Форма элемента. Отображает и позволяет редактировать сведения об одном элементе справочника. Если у справочника много реквизитов, то они могут быть распределены по закладкам.

 

На данный момент мы воспользуемся возможностью программы 1С:Предприятие генерировать автоматически форму. Это режим включается, если разработчик не создал самостоятельно форму. Сохраните конфигурацию и обновите конфигурацию базы данных. Запустите системы в режиме 1С:Предприятие. В меню Операции выберите команду Справочники и загрузите справочник ФизическиеЛица. Воспользуемся кнопкой Действия командной панели, которая откроет нам список команд. В раскрытом списке выбираем Добавить.

Тем самым мы получили возможность ввести первое физическое лицо.

Ввести новую строку также можно клавишей Insert. Добавьте несколько строк произвольных данных о физических лицах.

 

Согласитесь, не совсем информативно выглядит имя столбца Наименование. В этом столбце отображены фамилии. Было бы правильнее назвать столбец Фамилия. Исправляем этот недочет тем, что введем свою разработанную форму. Желательно всегда контролировать внешний вид справочника, документа, т. е. проектировать интерфейс диалоговых окон, через которые конечный пользователь вводит данные в информационную базу или читает из нее.

Возвращаемся в режим Конфигуратор, откроем объект - справочник ФизическиеЛица на закладке Формы. Обратите внимание на группу Редактирование. Значение переключателя группы равно В списке. При этом значении переключателя конечный пользователь может редактировать данный справочник только в списке. Так мы делали, когда заполняли справочник ФизическиеЛица в режиме 1С:Предприятие.

Установите значение переключателя группы равно В диалоге.

В открывшемся конструкторе форм справочника необходимо выбрать тип форм «Форма элемента», сделать форму основной, отметить флаги о расположении командных панелей. Здесь менять ничего не будем, а кнопкой Далее перейдем ко следующему окну.

В этом диалоге пометим реквизиты: Имя, Отчество, Адрес. Остальные настройки оставим без изменения.

Кнопкой Готово завершаем процесс создания формы списка справочника ФизическиеЛица. Выделяем колонку Наименование. В палитре свойств меняем текст шапки на Фамилия.

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

 

  1. Создайте новый справочник КлассификаторЕдиницИзмерения.

Справочник не является иерархическим, имеет реквизит – ПолноеНаименование, (использование – для элемента, тип – строка, длина – 100).

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

Зайдите в список предопределенных элементов. Воспользуйтесь либо клавишей Insert либо кнопкой на панели инструментов Добавить. Определите два предопределенных элемента «штуки» и «граммы».

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

 

ПредопрЭлем=Справочники.ИмяСправочника.ИмяПредопределенногоЭлемента;

3. Самостоятельно создайте справочник «ЕдиницыИзмерения». Справочник без иерархии, не имеет владельцев. У него определены следующие реквизиты:

- ЕдиницаПоКлассификатору (тип СправочникСсылка.КлассификаторЕдиницИзмерения )

- Вес (тип «Число», длина 15, точность 3)

- Коэффициент (тип «Число», длина 10, точность 3)

- Предопределенных элементов нет

Для формы справочника установите – редактирование в диалоге.

 

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

Проверьте полученный результат в пользовательском режиме.

Обратите внимание на то, что удалить эту форму из списка форм не получиться (будет возникать ошибка). Для удаления необходимо сбросить ссылку на форму как на основную форму данного вида (страница «Формы» конструктора).

 

ИЕРАРХИЧЕСКИЕ СПРАВОЧНИКИ

4. Создайте справочник «Сотрудники».

На закладке Иерархия включите флажок Иерархический справочник. Вид иерархии – Иерархия групп и элементов. Так же отметим флажок Размещать группы сверху. Не будем ограничивать количество уровней иерархии.

На закладке Данные. Длина кода – 5. Определим следующие реквизиты:

В реквизите Наименование, которая программа автоматически добавляет будет использоваться для вводом пользователя наименования должности сотрудника.

Введем реквизит ФизЛицо. Выберем значение Индексировать. Тип данных – СправочникСсылка.ФизическиеЛица.

Следующие реквизиты справочника Сотрудники:

Имя Использование Индексировать Тип
ДатаПриема Для элемента Не индексировать Дата. Состав даты Дата.
ДатаУвольнения Для элемента Не индексировать Дата. Состав даты Дата.
Примечание Для элемента Не индексировать Строка. Длина 100. Допустимая длина Переменная

Перейдем на закладку Формы.

Создадим форму списка, нажатием на кнопке с изображением «Лупа» в поле Списка:

шаг 1.Оставляем без изменения.КнопкаДалее.

- шаг 2.Отметьте флажками следующие элементы:

Нажмите кнопку Готово.

Произведите запуск системы в режиме 1С: Предприятие.

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

Для решения данной задачи присутствует элемент управления Разделитель. Вставьте данный элемент (в меню Форма, команда Вставить элемент управления, а затем Разделитель):

Произведите запуск системы в режиме 1С: Предприятие.

Введите наименования групп, т.е. наименования отделов: Управление, Бухгалтерия, Маркетинг, Планово-экономический отдел, Служба охраны, Торговые представители.

Введите произвольно сотрудников в данные отделы.

 

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

 

5. Создайте самостоятельно справочник Номенклатура. Справочник Номенклатура определите как иерархический, иерархия групп и элементов, количество уровней не ограничено.

У него определены следующие реквизиты:

- ПолноеНаименование (тип «Строка», дина 100, длина переменная )

- Артикул (тип «Строка», длина 25, индексировать с доп. упорядочиванием)

- ЕдиницаХраненияОстатков (тип «СправочникСсылка.ЕдиницыИзмерения»)

- БазоваяЕдиницаИзмерения (тип «СправочникСсылка.Классификатор.

- ЕдиницИзмерения»)

- Весовой (тип «Булево»)

- Услуга (тип «Булево»)

- Комментарий (тип «Строка» неограниченной длины)

- Предопределенных элементов нет

Определите форму списка, выбора, элемента

 

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

6.1. Создайте справочник ДоговораВзаиморасчетов. Справочник без иерархии, не имеет владельцев. У него определен реквизит:

- Комментарий (тип «Строка» неограниченной длины)

- Предопределенных элементов нет

6.2. Создайте справочник «Контрагенты». Справочник иерархический, иерархия групп и элементов, не имеет владельцев. У него определены следующие реквизиты:

- ОсновнойДоговор (тип «СправочникСсылка. ДоговораВзаиморасчетов»)

- Комментарий (тип «Строка» неограниченной длины)

- Предопределенных элементов нет

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

Необходимо открыть страницу «Владельцы» конструктора справочника ДоговораВзаиморасчетов.

Для подчинения справочника необходимо воспользоваться кнопкой командной панели Редактировать список, расположенной над списком владельцев справочника. В открывшемся окне выбора объекта необходимо отметить Контрагенты.

Обратите внимание на то, что владельцев у справочника может быть несколько (причем это не обязательно должны быть справочники). Несколько владельцев означает то, что у справочника их несколько, но у отдельно взятого элемента он всегда один (можно сказать, что в случае нескольких владельцев у подчиненного справочника поле «Владелец» имеет составной тип, но в отдельно взятой записи в данном поле содержится одно значение одного типа).

Перед тем как подчинить справочник ДоговораВзаиморасчетов проверьте, что он пустой (иначе не произойдет принятие изменений). Обратите внимание на то, что для того, чтобы работать с подчиненным справочником вам необходимо первоначально открыть справочник владелец, выбрать в нем «элемент-владелец» (сделать его текущим), после этого нажать на кнопку Перейти, расположенную в командной панели справочника.