К статье
Практический материал

Разработка и Конфигурация · 10 мин

Как создать новый документ в конфигураторе 1С

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

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

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

Что нужно подготовить перед созданием документа

Прежде чем добавлять объект, убедитесь, что конфигурация открыта для изменений. Зайдите в конфигуратор, откройте конфигурацию через меню «Конфигурация → Открыть конфигурацию». Если в дереве метаданных объекты отображаются серым и недоступны для правки, проверьте настройку поддержки: «Конфигурация → Поддержка → Настройка поддержки». Для типовых конфигураций потребуется включить возможность изменения.

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

Добавление объекта «Документ» в дерево метаданных

В дереве конфигурации найдите ветку «Документы». Кликните по ней правой кнопкой мыши и выберите «Добавить». Откроется палитра свойств нового объекта — именно через неё задаются все основные характеристики документа.

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

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

Порядок действий
  1. 1
    Откройте конфигуратор и загрузите конфигурацию для редактирования
  2. 2
    В ветке «Документы» дерева метаданных нажмите правой кнопкой → «Добавить»
  3. 3
    Задайте имя и синоним на закладке «Основные»
  4. 4
    Добавьте реквизиты и табличные части на закладке «Данные»
  5. 5
    Настройте нумерацию и движения по регистрам
  6. 6
    Сохраните конфигурацию и обновите конфигурацию базы данных (F7)
  7. 7
    Проверьте документ в режиме «Предприятие»

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

Структура данных документа задаётся на закладке «Данные» палитры свойств. Реквизиты шапки — это поля, общие для всего документа: организация, контрагент, склад, комментарий. Для каждого реквизита укажите тип: строка, число, дата, булево или ссылка на справочник, другой документ, перечисление.

Табличная часть нужна, когда документ содержит список строк — например, перечень товаров с количеством и ценой. Добавьте табличную часть через кнопку «Добавить» в разделе «Табличные части», затем внутри неё создайте реквизиты строк: номенклатура, количество, цена, сумма.

При выборе типа реквизита отдавайте предпочтение ссылочным типам вместо строк: ссылка на справочник «Номенклатура» обеспечит целостность данных и удобный выбор из списка. Для числовых реквизитов задайте разумную длину и точность — например, для количества обычно достаточно длины 15 с точностью 3 знака, но конкретные значения выбирайте под задачу.

Нумерация, периодичность и журналы

На закладке «Нумерация» определяется, как платформа присваивает номера документам. По умолчанию включена автонумерация с типом номера «Число». Если номер должен содержать буквы или префиксы — переключите тип на «Строка». Длина номера влияет на сортировку: при числовом типе сортировка корректная автоматически, при строковом номер вида «10» окажется раньше «2», поэтому строковые номера обычно дополняют нулями слева.

Флажок «Контроль уникальности» защищает от дублирования номеров — снимать его стоит только осознанно. Периодичность определяет, в каких границах номера должны быть уникальны: в пределах года, месяца или всей базы. Для большинства учётных документов используют уникальность в пределах года.

Чтобы документ отображался в общем списке рядом с другими документами, добавьте его в журнал: откройте ветку «Журналы документов», создайте новый журнал или отредактируйте существующий и отметьте ваш документ в составе. Также проверьте закладку «Подсистемы» — отметьте, в каких разделах интерфейса документ будет виден пользователям.

Проведение и движения по регистрам

На закладке «Движения» укажите, по каким регистрам документ будет формировать записи при проведении. Отметьте нужные регистры накопления, сведений или бухгалтерии — они должны быть созданы заранее. Если движений нет, документ работает как простая печатная форма или фиксатор факта без отражения в учёте.

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

bsl
Процедура ОбработкаПроведения(Отказ, Режим)
    Движения.ОстаткиТоваров.Записывать = Истина;
    Для Каждого СтрокаТовара Из Товары Цикл
        Движение = Движения.ОстаткиТоваров.Добавить();
        Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
        Движение.Период = Дата;
        Движение.Номенклатура = СтрокаТовара.Номенклатура;
        Движение.Количество = СтрокаТовара.Количество;
    КонецЦикла;
КонецПроцедуры

Если документ не должен проводиться, на закладке «Основные» или в свойствах проведения выберите «Запретить» — тогда он будет только сохраняться. Это подходит для документов-заявок и черновиков, которые не влияют на учётные данные.

Формы, обновление базы и проверка результата

Формы документа платформа генерирует автоматически, но для удобства работы их обычно создают явно: на закладке «Формы» нажмите кнопку добавления рядом с «Форма документа» и пройдите конструктор — выберите тип формы, отметьте реквизиты, которые должны отображаться. Аналогично создаётся форма списка.

После всех настроек сохраните конфигурацию и обновите конфигурацию базы данных: клавиша F7 или «Конфигурация → Обновить конфигурацию базы данных». Платформа покажет список изменений структуры — подтвердите их. При активных сеансах пользователей обновление может потребовать завершения их работы, поэтому в рабочих базах это делают в нерабочее время.

Проверьте результат в режиме «Предприятие»: откройте соответствующий раздел, создайте документ, заполните реквизиты и табличную часть, проведите его. Затем откройте отчёт или регистр, в который документ делает движения, и убедитесь, что записи появились корректно.

Контрольные точки

Как проверить результат

Документ виден в интерфейсе
Норма

Отображается в нужной подсистеме и журнале

Тревожный признак

Объект есть в конфигураторе, но в меню его нет — проверьте подсистемы и права

Создание и сохранение
Норма

Документ записывается, номер присваивается автоматически

Тревожный признак

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

Проведение
Норма

В регистрах появляются корректные записи

Тревожный признак

Движений нет — проверьте, выбраны ли регистры на закладке «Движения» и код обработчика

Типичные ошибки при создании документа

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

Типичные ошибки
01
Забыли обновить конфигурацию базы данных — документ есть в конфигураторе, но недоступен в режиме «Предприятие»
02
Не включили документ ни в одну подсистему — пользователи не видят его в интерфейсе, хотя объект создан
03
Регистры не отмечены на закладке «Движения» — проведение проходит без ошибок, но записей в учёте нет
04
Строковый номер без лидирующих нулей — список документов сортируется неправильно
05
Реквизиты добавлены после накопления данных с последующим изменением типов — риск потери или искажения данных при реструктуризации

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

Сравнение вариантов

Изменение основной конфигурации

Полный доступ ко всем объектам, но требует снятия с поддержки и усложняет обновление типовых релизов

Расширение конфигурации

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

Внешняя обработка

Не создаёт объект метаданных, но подходит для разовых операций и тестирования логики без изменения базы

FAQ

Можно ли создать документ, не снимая конфигурацию с поддержки?

Да, через механизм расширений конфигурации («Конфигурация → Расширения конфигурации»). В расширении можно добавлять собственные документы, не затрагивая типовую поставку. Это предпочтительный способ для типовых решений, которые регулярно обновляются.

Почему документ не виден пользователям в режиме «Предприятие»?

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

Как сделать, чтобы номер документа содержал буквы и префикс базы?

На закладке «Нумерация» установите тип номера «Строка». Префикс при обмене данными платформа добавляет автоматически; собственный префикс можно формировать кодом в обработчике «ПриУстановкеНовогоНомера» модуля объекта.

Что произойдёт с данными, если изменить тип существующего реквизита?

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

Нужно ли создавать формы вручную?

Нет — если формы не заданы, платформа генерирует их автоматически со всеми реквизитами. Явные формы создают, когда нужен нестандартный порядок полей, группировка, условное оформление или программная логика на форме.

Итог

Что важно запомнить

Новый документ создаётся через ветку «Документы» дерева метаданных: имя и синоним, реквизиты и табличные части, нумерация, движения по регистрам, затем обновление конфигурации базы данных. Перед изменениями сделайте резервную копию, а после — проверьте создание, проведение и движения документа в режиме «Предприятие».