📊 С каким объектом метаданных вы работаете чаще всего?
Справочники
Документы
Регистры сведений
Отчеты

Каждый разработчик платформы 1С:Предприятие 8 сталкивается с необходимостью расширения функционала типовой или самописной конфигурации. Основным инструментом для реализации новых бизнес-процессов является конфигуратор — специальная среда разработки, позволяющая изменять структуру базы данных и логику работы приложений. Процесс добавления нового объекта метаданных кажется простым на первый взгляд, однако требует строгого соблюдения последовательности действий, чтобы избежать ошибок компиляции или нарушения целостности данных.

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

Подготовка окружения и запуск конфигуратора

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

Запуск среды разработки осуществляется через окно запуска 1С. В списке баз данных выберите нужную информационную базу и установите переключатель в положение Конфигуратор. Если база находится в файловом варианте, убедитесь, что у вас есть права на запись в директорию с файлами базы. Для клиент-серверного варианта потребуется наличие прав на изменение конфигурации в свойствах пользователя базы данных.

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

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

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

Добавление нового объекта метаданных

Основной принцип работы с деревом метаданных заключается в контекстном меню. Чтобы добавить новый элемент, например, справочник или документ, необходимо найти соответствующую ветку в дереве. Допустим, нам нужно создать новый справочник"Контрагенты". Найдите ветку Справочники, нажмите на неё правой кнопкой мыши и выберите пункт Добавить.

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

В окне свойств также определяется тип объекта. Хотя ветка дерева уже задает тип (например, вы добавляете элемент в ветку"Справочники"), внутри свойств можно уточнить детали. Для справочников важно определить, будет ли он иерархическим, поддерживаем ли он группы, и какова максимальная длина кода и наименования.

☑️ Проверка перед созданием объекта

Выполнено: 0 / 1

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

Настройка реквизитов и табличных частей

Структура данных любого объекта формируется через реквизиты. Реквизиты — это поля, в которых хранится конкретная информация: названия, даты, суммы, ссылки на другие объекты. Чтобы добавить реквизит, выделите созданный объект в дереве метаданных, нажмите правую кнопку мыши и выберите Добавить -> Реквизит.

В окне свойств реквизиташим параметром является Тип. Тип определяет, какие данные можно хранить в поле. Это может быть примитивный тип (Число, Строка, Дата) или ссылочный тип (СправочникСсылка.Номенклатура, ДокументСсылка.ЗаказКлиента). Выбор правильного типа критически важен для последующей работы с данными и построения запросов.

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

Тип данных Описание Пример использования
Строка Текстовая информация переменной длины Артикул товара, Комментарий
Число Числовые значения с заданной точностью Количество, Цена, Сумма
Дата Дата и время с точностью до секунды Дата документа, Дата рождения
Булево Логическое значение (Истина/Ложь) Флаг"Новый клиент","Проведен"
ХранилищеЗначения Произвольные данные любой структуры Настройки отчета, Динамический список

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

⚠️ Внимание: Изменение типа уже существующего реквизита в рабочей базе с данными может привести к потере информации или ошибке преобразования типов. Делайте это только на этапе разработки.

Особенности составных типов

Составной тип позволяет хранить в одном поле данные разных типов. Например, поле"Контрагент" может содержать ссылку как на Юридическое лицо, так и на Физическое лицо. Это гибко, но усложняет написание запросов.

Создание и редактирование форм объектов

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

Чтобы добавить форму, найдите ветку Формы внутри вашего объекта, нажмите правую кнопку мыши и выберите Добавить. В мастере создания формы выберите тип формы и её назначение. Откроется редактор форм, где визуально можно расположить поля, кнопки и группы элементов управления.

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

Для сложных сценариев может потребоваться написание кода в модуле формы. Модуль формы позволяет реагировать на действия пользователя: нажатие кнопок, изменение значений в полях, открытие формы. Код пишется на встроенном языке 1С и позволяет реализовать динамическое поведение интерфейса.

💡

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

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

Регистрация объектов в подсистемах и интерфейсах

Просто добавить объект в дерево метаданных недостаточно для того, чтобы он появился в меню программы. 1С использует механизм подсистем для группировки объектов и формирования интерфейсов. Если не прописать объект в подсистеме, пользователь не сможет найти его в меню, даже если форма создана корректно.

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

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

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

⚠️ Внимание: Если интерфейс программы строится динамически на основе ролей, убедитесь, что новая подсистема включена в состав основных интерфейсов (Такси, Такси (вариант 2) и т.д.), иначе пользователи её не увидят.

💡

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

Сохранение конфигурации и обновление базы данных

После выполнения всех настроек и проверок необходимо сохранить изменения. Нажмите комбинацию клавиш Ctrl+S или выберите в меню Конфигурация -> Сохранить. Система проверит синтаксис объектов и при наличии ошибок выдаст сообщение в окно сообщений. Ошибки необходимо устранить перед продолжением работы.

Для применения изменений в базе данных необходимо выполнить обновление конфигурации базы данных. Выберите в меню Конфигурация -> Обновить конфигурацию базы данных. В открывшемся окне система покажет список изменений, которые будут внесены в структуру таблиц базы данных.

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

Конфигурация -> Обновить конфигурацию базы данных -> ОК

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

Что делать, если при обновлении возникла ошибка преобразования данных?

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

Можно ли добавить объект без выхода из режима предприятия?

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

Как добавить объект в конфигурацию, находящуюся на поддержке?

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

Где хранятся добавленные объекты физически?

В файловом варианте базы данные об объектах метаданных хранятся в файлах каталога 1Cv8. В клиент-серверном варианте (SQL) структура метаданных хранится в системных таблицах сервера 1С, а данные объектов — в пользовательских таблицах базы данных SQL.

Нужно ли перезапускать сервер 1С после добавления объекта?

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