Создание предопределенных элементов из макета

27.07.26

Разработка - Инструментарий разработчика

Подсистема для замены режима автоматического создания предопределенных данных в конфигураторе на создание по подготовленному макету при запуске приложения с возможностью указания УИД ссылки и контроля уникальности кода нового элемента.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Создание предопределенных элементов из макета
.cf 43,04Kb
2 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

Поставка predefined.cf (8.5.1.1236)

  • включает подсистему дпДополнительныеПодсистемы.ПредопределенныеЗначения
  • включает пример иерархического справочника и макета с предопределенными группами и элементами (см. Справочник.демоПредопределенныеЭлементы)
  • включает пример плана видов характеристик и макета с предопределенными элементами разного типа (см. ПланВидовХаракетристик.демоПредопределенныеХарактеристики)
  • включает шаблон макета для описания предопределенных данных и инструкцию по его заполнению (см. ОбщийМакет.дпПредопределенныеЗначения_Шаблон)

 

Подключение объекта к подсистеме

  1. Добавить тип ссылки объекта в ОпределяемыйТип.дпПредопределенныеЗначения
  2. Свойству ОбновлениеПредопределенныхДанных установить значение НеОбновлятьАвтоматически
  3. Добавить в объект макет с описанием предопределенных данных (см. пример ОбщийМакет.дпПредопределенныеЗначения_Шаблон), можно добавить как один макет ПредопределенныеЗначения, так и несколько с префиксами и постфиксами ПрефиксПредопределенныеЗначенияПостфикс
  4. При необходимости можно добавить в макет дополнительную колонку с именем реквизита объекта и значением простого типа Число, Строка, Дата, Булево (для более сложных случаев рекомендуется использовать специальное обновление ИБ)

 

Назначение объектов подсистемы

ОпределяемыйТип.дпПредопределенныеЗначения - содержит список справочников и ПВХ с отключенным автоматическим созданием предопределенных данных и заполненными макетами для создания предопределенных данных (см. ОбщийМакет.дпПредопределенныеЗначения_Шаблон)
При запуске предприятия будет произведена инициализация предопределенных данных с макетами (по умолчанию инициализированы будут только новые и удаленные элементы, элементы измененные в макете, но существующие в БД изменены не будут)

дпПредопределенныеЗначенияКлиент.ПередНачаломРаботыСистемы()

 

ОбщийМакет.дпПредопределенныеЗначения_Шаблон - содержит примеры описания предопределенных групп и элементов справочников и планов видов характеристик с возможностью при необходимости задать значения реквизитов

ИмяПредопределенныхДанных  Обязательный  значение должно быть в списке предопределенных элементов
Код Необязательный  если не указан, при создании элемента
 УстановитьНовыйКод()
Наименование Необязательный  если не указано, при создании элемента
 ИмяПредопределенныхДанных
Ссылка Необязательный  если не указана, при создании элемента
 УИД по Хешу ОбъектМетаданных.ПолноеИмя().ИмяПредопределенныхДанных
ЭтоГруппа Необязательный  для иерархии Булево
Родитель Необязательный  для иерархии УИД владельца
ТипЗначения Необязательный  для ПВХ ОписаниеТипов(ТипЗначения)
Длина Необязательный  для ПВХ Число(Длина, Точность), Строка(Длина)
Точность Необязательный  для ПВХ Число(Длина, Точность), Дата(Время, Дата)

 

Пример использования подсистемы

  • Если требуется, что бы в разных БД предопределенные элементы имели одинаковую Ссылку, то надо в этих базах задать этим элементам в макете предопределенных значений одинаковое значение УИД в колонке Ссылка, предопределенные элементы будут создаваться с заданным значением ссылки.
  • Если требуется, что бы при создании новых предопределенных элементов в БД не дублировались коды элементов, то элементам в макете предопределенных значений не заполнять значение в колонке Код, предопределенные элементы будут создаваться с новым кодом уникальным для этой БД.
  • Если требуется добавить предопределенный элемент в конфигурации которая находится на поддержке, не дожидаясь обновления на конфигурацию поставщика, в этом случае при очередном обновлении на конфигурацию поставщика в конфигураторе такой предопределенный элемент будет удален и добавлен, но в БД существующая ссылка останется неизменной (по умолчанию инициализированы будут только новые и удаленные элементы, элементы измененные в макете, но существующие в БД изменены не будут).
  • Если требуется полная переинициализация предопределенных элементов в соответствии с макетом предопределенных значений, можно ее вызвать отдельно:
    • для предопределенных элементов с совпавшим УИД ссылки, будут обновлены все реквизиты в соответствии с макетом;
    • для предопределенных элементов с НЕ совпавшим УИД ссылки, старый элемент БД будет помечен на удаление как НЕ предопределенный и создан новый предопределенный элемент с новой ссылкой.
// полная переинициализация всех справочников и ПВХ
дпПредопределенныеЗначения.ИнициализироватьПредопределенныеЗначенияОбъектов(Истина);

// полная переинициализация выбранного справочника или ПВХ
дпПредопределенныеЗначения.ИнициализироватьПредопределенныеЗначенияОбъекта(ОбъектМетаданных, Истина);

 

Вступайте в нашу телеграмм-группу Инфостарт

Предопределенные элементы Предопределенные данные Обновление предопределенных данных Загрузка предопределенных из макета

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта 1С:Предприятие 8 Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

16500 руб.

02.09.2020    272941    1509    422    

1182

Пакетная печать Печатные формы Инструментарий разработчика Программист 1С:Предприятие 8 Платные (руб)

Расширение для создания и редактирования печатных форм в системе 1С:Предприятие 8.3. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и прозрачность разработки, а также навести порядок в многообразии корпоративных печатных форм. Обновление версии от 21.04.26

22570 руб.

06.10.2023    41186    120    54    

129

Инструментарий разработчика Нейросети Платные (руб)

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

15250 руб.

25.08.2025    66694    134    36    

141

Инструментарий разработчика Разработка Администрирование веб-серверов Системный администратор Программист Бизнес-аналитик Руководитель проекта 1С 8.3 Платные (руб)

Analyzer 1C сводит выгрузку 1С — основную конфигурацию и все расширения — в единый граф знаний. Любой запрос по связям за доли секунды, с пометками «Доб.» / «Заимств.» / «Переопределено». Новое в 2.0 — обновление поставки: сравнение и объединение версий деревом «как в Конфигураторе» с выгрузкой плана решений; поиск конфликтов из-за перехватов расширений и висячих ссылок; загрузка из бинарных .cf/.cfe; циклические зависимости. Плюс анализ влияния, запросы BSL, роли и RLS, граф вызовов. Минута на развёртывание через Docker без необходимости подключения к Интернет. Любая 1С:Предприятие 8.3+.

14000 руб.

17.04.2026    10057    42    60    

56

Инструменты администратора БД Инструментарий разработчика Роли и права Программист 1С:Предприятие 8 1C:Бухгалтерия Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

17000 руб.

10.11.2023    27068    99    46    

104

Инструментарий разработчика Программист 1С:Предприятие 8 Платные (руб)

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

9500 руб.

17.05.2024    55382    189    63    

220

Информационная безопасность Инструменты администратора БД Инструментарий разработчика Учет документов Системный администратор Программист Бизнес-аналитик Бухгалтер Пользователь Руководитель проекта 1С 8.3 1С 8.5 Розничная и сетевая торговля (FMCG) Платные (руб)

Контроль ввода данных в 1С: проверка заполнения реквизитов, обязательные поля, контроль перед записью и проведением, запрет проведения документа. Позволяет настраивать любые проверки данных в 1С 8.3/8.5 от обязательных полей до сложных условий – без открытия конфигуратора и написания кода. Готовое расширение, которое подключается и работает сразу.

6000 руб.

15.04.2026    3082    5    0    

21
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. V.Nikonov 130 28.07.26 11:16 Сейчас в теме
А таким способом можно не только Простейшие объекты создавать, но и с Табличными частями, Ссылками на другие элементы... Для этого надо только сменить Формат описания - заменить на XML выгрузку тестового объекта. Тестовый объект создать в копии, затем выгрузить в xml (при необходимости подредактировав).
2. parcan 95 28.07.26 16:27 Сейчас в теме
(1) Вы описываете другую задачу, похожую не на инициализацию предопределенных значений, а на первоначальное заполнение данных и ее место скорее в механизме обработчиков обновления ИБ, поясню:
- инициализация предопределенных значений выполняется намеренно как можно раньше при старте системы, задолго до выполнения обработчиков обновления ИБ и в этот момент еще много чего может не существовать в том числе и ссылок других предопределенных значений, да и в какой последовательности будут инициализированы различные предопределенные данные в общем случае неизвестно;
- обработчики обновления ИБ выполняются позже, когда уже можно считать, что например все предопределенные значения существуют, и последовательность запуска самих обработчиков обновления заранее известна и можно гарантировать корректное заполнение первоначальных данных с учетом контроля всех ссылочных типов;
- нечто похожее на то что описываете вы используется в нашей компании, но на мой взгляд у этого подхода есть существенный недостаток, со временем конфигурация изменяется, появляются новые реквизиты и разного рода xml или json в макетах устаревают и лично на мой взгляд поддерживать первоначальное заполнение данных оформленное в виде живого кода со временем проще, чем оформленное в виде разного рода структурированного описания данных хранимого в макетах.
Для отправки сообщения требуется регистрация/авторизация