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

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

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

Например, в системе может быть справочник РасчетныеСчета, тогда его можно сделать подчиненным справочнику Контрагенты. Это означает, что «Контрагент владеет расчетными счетами, а расчетные счета принадлежат контрагенту».

В 1C:Предприятии 8 у справочника может быть несколько вла­дельцев, то есть справочник может быть подчинен сразу несколь­ким справочникам или другим объектам. Но каждый элемент подчиненного справочника имеет одного и только одного вла­дельца, который хранится в одном из объектов-владельцев.

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

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

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

В 1С:Предприятии 8 для подчиненных справочников реализова­но свойство ИспользованиеПодчинения. Оно позволяет управ­лять ограничением, накладываемым на владельцев. В качестве владельца могут использоваться только группы, только элементы или комбинированный вариант - группы и элементы. Если у справочника несколько владельцев, то ограничение применяется к каждому из них.

Среди различных вариантов настройки серий кодов есть вариант «В пределах подчинения владельцу». В иерархических подчинен­ных справочниках он обеспечивает автоматическую нумерацию и контроль уникальности кодов среди элементов с одинаковым вла­дельцем, но разными родителями.

Табличные части

В 1С:Предприятии 8 появилась возможность для справочника создать одну или несколько табличных частей. Эту возможность рекомендуется использовать для отражения информации, связан­ной с данным элементом, но не имеющей собственной объектной сущности (в противном случае рекомендуется завести подчинен­ный справочник). Например, для справочника Товары может быть создана табличная часть ЕдиницыИзмеренияТовара.

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

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

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

Ниже представлен перечень ситуаций и наиболее корректный вы­бор между подчиненным справочником и табличной частью. Просьба изучить эти ситуации очень тщательно, чтобы не допус­кать ошибок при выборе.

Ситуация 1

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

Решение: Справочник Контрагенты и подчиненный ему справочник РасчетныеСчета с полями Банк, Номер, КоррСчет.

Ситуация 2

Допустим, для справочника Номенклатура есть потреб­ность хранить список единиц измерения для каждого товара с указанием коэффициента пересчета в основную единицу измерения. Эти сведения подбираются из справочника ЕдиницыИзмерения, который хранит все существующие в природе единицы измерений. Каждая строка такого подчи­ненного списка не имеет собственной объектной сущности, а нужна только для пересчета из одной единицы измере­ния в другую.

Решение: Справочник Номенклатура и табличная часть ЕдиницыИзмеренияТовара с полями ЕдиницаИзмерения и КоэффициентПересчета.

Ситуация 3

Допустим, встроенной системы задания прав пользователей не хватает для некоторых специальных приложений. На­пример, часто требуется разработать механизм утверждения документов разными пользователями. Тогда для сотрудника нужно хранить список документов, которые он может ут­верждать, и с этим отлично справится табличная часть УтверждаемыеДокументы справочника Сотрудники. Та­кая информация не имеет объектной природы, а просто связывает документ и сотрудника, поэтому вряд ли понадо­бится когда-либо в будущем создавать ссылки на нее.

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

Ситуация 4

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

Решение: Выбор между подчиненным справочником и таб­личной частью зависит от назначения конфигурации. Если в будущем может возникнуть потребность создавать ссылки на такие сведения, то лучше завести подчиненные справоч­ники СоставСемьи, Образование и ТрудоваяДеятельность.

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