- Определяемые типы в 1С 8.3
- Что такое определяемые типы
- Настройка
- Пример применения определяемых типов в 1С 8.3
- Заметки из Зазеркалья
- Поддержка определяемых типов, планов видов характеристик и общих реквизитов
- Поддержка наборов типов
- Поддержка предопределенных в справочниках
- Использование определяемых типов
- Определяемые типы в 1С 8.3
- Работа с определяемыми типами
- Определяемый тип программно
- Объект 1С «Определяемые типы»
- Особенности объекта 1С «Определяемые типы»:
- Использование объекта 1С «Определяемые типы»:
- Настройка объекта 1С «Определяемые типы»:
- Добавить комментарий Отменить ответ
Определяемые типы в 1С 8.3
Определяемые типы — новый объект метаданных 1С, который появился в платформе версии 8.3. Объект имеет вспомогательный характер. Рассмотрим, что представляют собой определяемые типы и задачи, которые умеет решать данный объект.
Что такое определяемые типы
Определяемые — это новые типы данных, набор которых определяет разработчик прикладного решения. Он состоит из нескольких допустимых типов. Такой тип данных может являться типом любого реквизита конфигурации, кроме самого определяемого типа и объекта «План видов характеристики«.
Настройка
Настроек у данного объекта не так уж и много:
Т.е. помимо имени и синонима в 1С определяемые типы имеют только набор типов объектов.
Пример применения определяемых типов в 1С 8.3
Применений данному объекта можно найти великое множество.
Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания — попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>
- можно описать в конфигурации реквизиты, ссылающиеся на данные, которые будут определены при встраивании фрагмента в конкретную конфигурацию;
- присвоить некоторому набору подписок на событие один тип определяемых данных, при изменении набора типов для всех подписок будет меняться источник динамически;
- использовать как некую альтернативу плана видов характеристик
и многое другое.
Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):
К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.
Источник
Заметки из Зазеркалья
Данная статья является анонсом новой функциональности.
Не рекомендуется использовать содержание данной статьи для освоения новой функциональности.
Полное описание новой функциональности будет приведено в документации к соответствующей версии.
Полный список изменений в новой версии приводится в файле v8Update.htm.
Планируется в версии 8.3.20
Мы продолжаем развивать функциональность расширений, чтобы вы могли с их помощью делать всё более сложные и функциональные кастомизации. В версии 8.3.20 мы добавим в расширения ещё несколько новых возможностей.
Поддержка определяемых типов, планов видов характеристик и общих реквизитов
В расширениях будут поддержаны определяемые типы.
Как это можно использовать?
Предположим, у нас есть конфигурация для автоматизации торговли. В ней есть определяемый тип Вес (Число (10,3)), который используется для определения веса продаваемых товаров (т.е. учет ведется с точностью до грамма).
Благодаря поддержке определяемых типов в расширениях мы можем сделать расширение, позволяющее этой конфигурации работать с ювелирными изделиями (где учет веса ведется с точностью до одной сотой грамма). Для этого мы добавляем в расширение определяемый тип Вес из основной конфигурации и переопределяем его как Число (10,5).
В расширениях также будут поддержаны планы видов характеристик – их можно будет добавить из конфигурации в расширение и переопределить в соответствии с решаемой задачей.
Точно так же можно будет добавить из конфигурации в расширение общий реквизит и переопределить его (например, расширив тип). Эта функциональность будет недоступна, если этот общий реквизит используется для разделения данных.
Поддержка наборов типов
В версии 8.3.20 будут добавлены новые возможности использования ссылок на объекты расширений.
Так, например, массив, полученный вызовом метода Справочники.ТипВсеСсылки().Типы(), будет содержать типы справочников как из конфигурации, так и из расширений (аналогично будут себя вести методы Документы.ТипВсеСсылки().Типы() и т.д.). Ранее эти методы возвращали только соответствующие типы, определенные в конфигурации.
Также в реквизит типа ЛюбаяСсылка можно будет помещать ссылки на объекты типов, определенных в расширениях. В реквизиты типа СправочникСсылка, ДокументСсылка и т.д. можно будет помещать ссылки на объекты соответствующих типов из расширений. Ранее после присвоения таким реквизитам ссылок на объекты типов, определенных в расширениях, значение реквизита становилось равным НеОпределено.
Это нововведение, помимо прочего, позволит разработчикам расширений легче встраивать свои расширения в стандартные механизмы БСП, использующие наборы и определяемые типы.
Поддержка предопределенных в справочниках
В версии 8.3.20 можно будет добавлять предопределенные элементы в собственные справочники расширений. Ранее эта возможность была доступна только для планов видов характеристик, планов счетов и планов видов расчета, определенных в расширениях
Источник
Использование определяемых типов
Область применения: управляемое приложение, обычное приложение.
1. Определяемые типы предназначены для определения типов данных, которые описывают часто используемые сущности или с высокой степенью вероятности могут изменяться при внедрении прикладного решения. Они позволяют многократно использовать описываемый тип или набор типов без уточнения состава в различных местах конфигурации (в реквизитах, свойствах объектах, форм и т.п.).
2. Определяемые типы рекомендуется использовать в следующих случаях:
2.1. Для определения простого типа и его квалификаторов, имеющего прикладной смысл, который используется в различных реквизитах, ресурсах, реквизитах форм, макетах и т.д. в рамках какой-либо подсистемы или во всем прикладном решении. Это гарантирует одинаковую длину, точность данных во всех местах использования, упрощает доработку в случае изменения требований.
Например:
- НомерСчетаФактуры — Строка, длина 30. Регламентирует формат номера счета-фактуры в различных документах: ПоступлениеТоваровИУслуг , ЗаписьКнигиПокупок , ВозвратТоваровОтКлиента и др.
- АдресДоставки — Строка, 500. Текстовое представление адреса доставки в документах ЗаказПоставщику , АдресДоставкиПеревозчика , в обработке ПомощникПродаж , в реквизите АдресДоставкиПеревозчика документа ЗаявкаНаВозвратТоваровОтКлиента и др.
2.2. Для определения составного типа, который массово используется в объектах какой-либо подсистемы или во всем прикладном решении. Определяемый тип гарантирует одинаковый состав (тип) данных во всех местах использования, а также упрощает доработку и внедрение подсистем в прикладные конфигурации.
Например, в конфигурацию внедрена подсистема Взаимодействия , которая предназначена для ведения переписки по электронной почте, регистрации звонков и встреч. При внедрении этой подсистемы разработчик принял решение о составе объектов метаданных, которые могут выступать в качестве «контактов взаимодействий» — это элементы справочников ФизическиеЛица , Партнеры , КонтактныеЛицаПартнеров , и задал этот состав типов в определяемом типе КонтактВзаимодействий , предусмотренном в подсистеме. В свою очередь, определяемый тип массово используется в реквизитах объектов и формах подсистемы (в документах Встреча , ЗапланированноеВзаимодействие — табличная часть Участники , в документе СообщениеSMS – табличная часть Адресаты , в документе ТелефонныйЗвонок — реквизит АбонентКонтакт , в общих формах АдреснаяКнига , ВыборКонтакта – реквизиты КонтактыПоПредмету , в параметре макета ИерархияВзаимодействийКонтакт журнала документов Взаимодействия и т.д.) В противном случае, без использования определяемого типа КонтактВзаимодействий пришлось бы снимать объекты подсистемы с поддержки и задавать требуемый состав типов во всех перечисленных местах.
2.3. При разработке внедряемой подсистемы — для переопределения прикладного типа, который будет уточнен при внедрении.
Например, тип подсистемы Поставщики при внедрении может быть заменен на прикладной тип конфигурации Контрагенты .
3. Некорректно использовать определяемые типы для задания «синонима» существующему типу, «подмены» сущностей, для локального (не массового) использования в рамках одной подсистемы (конфигурации) без необходимости внедрения в другие конфигурации, только из соображений легкости доработки. Как правило, это говорит об ошибке проектирования или о методологически неверном выборе исходного имени типа.
Например, в конфигурации предусмотрен справочник Контрагенты , ссылки на который имеются в нескольких регистрах сведений, реквизитах форм и других объектах конфигурации. При этом справочник не является ни частью встраиваемой подсистемы, ни прикладной сущностью, которая может быть расширена другими типами. Тогда некорректно заводить дополнительный определяемый составный тип, состоящего из единственного типа Контрагенты , на «всякий случай», для «механического» упрощения возможного изменения конфигурации в дальнейшем, поскольку это размывает прикладной смысл сущности.
Источник
Определяемые типы в 1С 8.3
Работа с определяемыми типами
Определяемый тип предназначен для упрощения процедуры изменения типа данных у каких-либо свойств, например у реквизитов объекта. Например, в конфигурации есть десять документов с реквизитом Ответственный. Тип данного реквизита — СправочникСсылка.Пользователи. Допустим, в конфигурацию добавили новый справочник ВнешниеПользователи. Теперь нужно сделать тип реквизита Ответственный составным, включив в него новый справочник. Для этого придется менять тип у каждого из десяти документов. А таких документов может быть не десять, а сто. Для упрощения этой процедуры можно использовать определяемый тип.
При создании определяемого типа нужно указать его имя и тип. Можно указать составной тип данных:
Для выбора доступно множество различных типов, в том числе примитивные типы, ссылки, объекты, менеджеры, системные перечисления, некоторые универсальные коллекции и т.п.
Теперь данный определяемый тип можно указывать как тип для реквизитов объектов:
Если в дальнейшем нужно будет изменить тип реквизита Ответственный, то достаточно будет добавить новый тип в состав определяемого типа. Тип реквизитов, где был выбран определяемый тип будет изменен автоматически.
Также через определяемый тип можно определять квалификаторы примитивных типов. Например, создать определяемый тип Артикул типа строка и указать для него длину 30.
Если в качестве типа для реквизитов выбирать данный определяемый тип, то гарантируется, что длина везде будет 30 символов.
У определяемого типа есть некоторые ограничения:
- его нельзя использовать как тип значения в плане видов характеристик
- он не может входить в составной тип данных
- не может входить в состав другого определяемого типа
- доступен только начиная с версии платформы 8.3.3
Определяемый тип программно
Чтобы программно указать тип свойства как определяемый тип можно просто создать Описание типов и перечислить все те типы, которые указаны для определяемого типа. Но можно получить готовое описание типов через метаданные:
Источник
Объект 1С «Определяемые типы»
Объект 1С «Определяемые типы» — это объект конфигурации 1С, который предназначен для упрощения и повышения удобства внедрения подсистем при разработке прикладного решения; это объект, состоящий из нескольких допустимых типов , набор которых определяет разработчик программы или её настройщик.
Особенности объекта 1С «Определяемые типы»:
- описывает часто используемую сущность и может изменяться в ходе внедрения программы;
- может присваиваться любому реквизиту конфигурации, кроме объекта «План видов характеристик»;
- не может входить в состав составного типа данных какого-либо другого реквизита;
- не может входить в состав типа следующих объектов:
- Признак учета плана счетов;
- Признак учета субконто плана счетов;
- Тип номера нумератора.
- состав типа можно менять (разработчик может как добавлять в него объекты, так и исключать их).
Использование объекта 1С «Определяемые типы»:
- можно описать в конфигурации реквизиты, ссылающиеся на данные, которые будут определены при встраивании фрагмента в конкретную конфигурацию;
- присваивать один и тот же определяемый тип целому набору подписок на какое-либо событие, благодаря которому изменение их типов приведёт к автоматическому изменению источника;
- как альтернативу Плана видов характеристик;
- описание реквизитов, которые ссылаются на данные, определяемые в ходе встраивания в конфигурацию отдельного фрагмента.
Помимо всего прочего использование объекта гарантирует, что схожим реквизитам будет задан тип данных с одинаковой точностью, длиной и составом полей.
Настройка объекта 1С «Определяемые типы»:
Для настройки объекта «определяемые типы необходимо указать имя, синоним и набор типов объектов.
Для описания типа на встроенном языке следует использовать конструкцию вида ОпределяемыйТип. .
Добавить комментарий Отменить ответ
Для отправки комментария вам необходимо авторизоваться.
Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.
Источник