1С дополнительные характеристики объекта метаданных

Планы видов характеристик — это прикладные объекты конфигурации. Они предназначены для хранения информации о характеристиках различных объектов.

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

Структура

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

Однако основное назначение плана видов характеристик заключается в том, чтобы для каждой характеристики хранить тип значения, который она может принимать:

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

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

Однако не исключена ситуация, когда для создания очередной характеристики пользователю понадобится тип, не существующий в прикладном решении. Например, пользователь решит создать характеристику Запах, которая должна иметь значения справочника Запахи, но такого справочника в прикладном решении нет.

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

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

Формы плана видов характеристик

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

Форма списка

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

Форма характеристики

Для просмотра и изменения данных отдельных характеристик используется форма характеристики. Как правило, она представляет данные в удобном для восприятия и редактирования виде:

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

Печать (Ctrl+P)

В качестве примера характеристики объектов конфигурации можно привести:

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

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

Можно предложить два способа решения задачи:

1. Для каждой характеристики заводится отдельный реквизит нужного типа в соответствующем объекте. У этого подхода есть несколько недостатков:

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

2. Использовать специальный объект, в котором описываются характеристики с указанием того, как называется характеристика, какого она типа и т. д. Эта схема лишена недостатков предыдущей: для добавления новой характеристики нет необходимости изменять прикладное решение, не расходуется избыточное место в базе данных. Также имеется возможность самому пользователю добавлять новые характеристики объектов. Система «1С:Предприятие» представляет такой объект. Он называется план видов характеристик.

Способ не лишен недостатков. К таковым можно отнести более сложную логику организации и использования характеристик. Однако, затраты, связанные с усложнением прикладного решения, будут понесены только один раз ‑ при разработке решения. По мере увеличения количества (и типов) характеристик, дополнительная модернизация прикладного решения будет не нужна.

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

План видов характеристик является центральным элементом механизма характеристик:

Рис 1 Общая схема работы с характеристиками

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

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

Рис 2 Задание типа характеристики

Для тех объектов метаданных, для которых планируется вести учет характеристик, с помощью диалога Дополнительные характеристики объекта метаданных (см. рис 1), указываются правила отбора видов характеристик и правила получения значений характеристик для конкретных объектов данных. Фактически, указываются следующие правила:

  • Как получить виды характеристик для конкретного объекта данных ‑ правила отбора. По указанным правилам система формирует запрос, выполняющий получение списка видов характеристик. Этот запрос формируется с использованием ключевого слова РАЗРЕШЕННЫЕ. В результате, в список попадут только те виды характеристик, на которые у пользователя есть права, которые определяются наложенными на таблицу со списком характеристик ограничениями доступа к данным
  • Как получить значение характеристики, зная объект данных и вид характеристики ‑ правила получения значений. По указанным правилам система формирует запрос, который выполняет получение значений характеристик. Данный запрос не является самостоятельным, а формирует таблицу, которая соединяется с основным запросом, который получает прикладные данные. Поэтому использование или не использование ключевого слова РАЗРЕШЕННЫЕ определяется основным запросом.

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

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

Рис 3. Редактирование значения характеристики

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

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

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

В некоторых случаях для реализации механизма характеристик (примеры такой реализации приведены далее) может потребоваться сокращенный набор объектов. Однако использование плана видов характеристик требуется при любом наборе используемых объектов.