Определяемые типы в 1С 8.3.

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

Создаем определяемый тип в 1С

Создадим определяемый тип. Для этого в конфигураторе 1С развернем ветку Общие, в этой ветке нас интересует ветка Определяемые Типы. У данной ветки нужно вызвать контекстное меню с единственной командной Добавить.

Определяемые типы в дереве метаданных

После выполнения этой команды, определяемый тип будет создан, а справа откроется палитра свойств этого типа.

Палитра свойств определяемого типа

В этой палитре свойств мы можем указать название нового типа и определить его тип.

Причем, если мы нажмем на кнопку «…» свойства Тип, то обнаружим, что новый определяемый тип может быть составным…

Составной тип определяемого типа

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

Использование примитивного типа с общими квалификаторами.

Рассмотрим первую возможность применения определяемого типа. Иногда в конфигурации необходимо массово использовать примитивный тип с одинаковыми квалификаторами. Например, у нас в разных документах есть реквизит цена, который  использует тип Число с длинной 10, точностью  2, и еще неотрицательный.  В платформе 1С 8.3 мы можем создать определяемый тип с таким примитивным типом.

Создание определяемого типа

Теперь мы можем у соответствующего реквизита документа выбрать этот тип.

казание определяемого типа

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

Определяемого тип на управляемой форме

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

Использование составного типа

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

У этого подхода есть следующие преимущества:

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

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

Реквизит документа

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

Справочники конфигурации

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

Составной определяемый тип

И этот тип, указать в соответствующих реквизитах документов.

Составной определяемый тип в реквизитах документов

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

Выбор типа данных

А потом уже выбрать нужный элемент справочника

Форма выбора элемента

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

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

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

Выбор нового типа в реквизите

Другие статьи по теме конфигурирования:

Документы в 1С 8.3

Справочники в 1С 8.3

Предопределенные элементы справочников 1С

Формы справочников в 1С 8.3

Журнал документов в 1С 8.3

Табличные части объектов 1С

Более подробно и основательно начальные вопросы программирования в 1С есть вы можете изучить в
Книга «Программировать в 1С за 11 шагов»

Изучайте программирование в 1С в месте с моей книгой «Программировать в 1С за 11 шагов»

Программировать в 1С за 11 шагов

Книга написана понятным и простым языком — для новичка.

  1. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  2. Научитесь понимать архитектуру 1С;
  3. Станете писать код на языке 1С;
  4. Освоите основные приемы программирования;
  5. Закрепите полученные знания при помощи задачника.

О том как разрабатывать под управляемым приложением 1С, читайте в книге Книга «Основы разработки в 1С: Такси»

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

Основы разработки в 1С такси
  1. Очень доступный и понятный язык изложения
  2. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  3. Поймете идеологию управляемого приложения 1С
  4. Узнаете, как разрабатывать управляемое приложение;
  5. Научитесь разрабатывать управляемые формы 1С;
  6. Сможете работать с основными и нужными элементами управляемых форм
  7. Программирование под управляемым приложением станет понятным

Промо-код на скидку в 15% — 48PVXHeYu

Эти книги, плюс книга по программированию оперативного учета имеются в едином комплекте: комплект книг по разработке в 1С.
Только для читателей моего блога,
промо-код на скидку в 300 рублей на весь комплект: blog


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

можно оплатить вручную:

Яндекс.Деньги — 410012882996301
Web Money — R955262494655

Вступайте в мои группы:

Вконтакте: https://vk.com/1c_prosto
Фейсбуке: https://www.facebook.com/groups/922972144448119/
ОК: http://ok.ru/group/52970839015518
Твиттер: https://twitter.com/signum2009

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

одиннадцать − 1 =