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

Документы и Печать · 11 мин

1С: как создать документ на основании другого документа

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

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

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

Ниже разобраны оба сценария: стандартная работа в пользовательском интерфейсе (УТ, ERP, Бухгалтерия, Комплексная автоматизация) и настройка ввода на основании в конфигураторе для собственных или доработанных документов.

Как работает механизм ввода на основании

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

В типовых конфигурациях цепочки уже настроены: «Заказ покупателя → Реализация товаров и услуг → Счёт-фактура», «Поступление товаров → Счёт-фактура полученный», «Счёт на оплату → Оплата». Если документ в цепочке не создаётся, чаще всего дело в статусе документа-основания, правах пользователя или в том, что документ не проведён.

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

В управляемом интерфейсе (такси) команда ввода на основании доступна из формы самого документа и из списка документов. Расположение кнопки зависит от конфигурации: «Создать на основании», «Ввести на основании» или выпадающее меню со списком доступных типов документов.

Порядок действий в пользовательском режиме
  1. 1
    Откройте документ-основание (например, заказ покупателя) или выделите его в списке.
  2. 2
    Нажмите кнопку «Создать на основании» в командной панели формы.
  3. 3
    Выберите тип создаваемого документа из предложенного списка.
  4. 4
    Проверьте автоматически заполненные поля: контрагент, договор, табличная часть, суммы.
  5. 5
    При необходимости отредактируйте данные и проведите документ.
  6. 6
    Убедитесь, что в форме документа отображается ссылка на основание.

Если в списке нет нужного типа документа, проверьте три вещи: проведён ли документ-основание, есть ли у вас права на создание документов этого вида и не отключена ли соответствующая функциональная опция в настройках программы (например, «Заказы поставщикам» или «Ордерный склад» в УТ и ERP).

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

Создание на основании нескольких документов

Многие конфигурации позволяют создать один документ на основании сразу нескольких оснований — например, одну реализацию по нескольким заказам одного покупателя. Для этого выделите в списке несколько документов (с зажатой клавишей Ctrl) и нажмите «Создать на основании».

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

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

Если вы дорабатываете конфигурацию или создаёте собственный документ, связь настраивается в конфигураторе. Откройте свойства документа, который должен создаваться на основании, и на закладке «Ввод на основании» укажите два списка: «Вводится на основании» (типы документов-оснований) и «Является основанием для» (типы документов, которые можно создать из него).

Логика заполнения полей описывается в модуле объекта документа в процедуре «ОбработкаЗаполнения». Параметр «ДанныеЗаполнения» содержит ссылку на документ-основание, по которой можно получить его реквизиты и табличные части.

bsl
Процедура ОбработкаЗаполнения(ДанныеЗаполнения, СтандартнаяОбработка)

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

КонецПроцедуры

После изменений обновите конфигурацию базы данных (F7) и проверьте, что команда «Создать на основании» появилась в форме документа-основания. Если форма документа дорабатывалась вручную, команду, возможно, потребуется добавить в командную панель формы явно.

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

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

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

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

Ссылка на основание в новом документе
Норма

Поле «Документ основания» заполнено, основание открывается по ссылке

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

Поле пустое — документ создан копированием, а не вводом на основании

Заполнение реквизитов
Норма

Контрагент, договор, табличная часть совпадают с основанием

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

Поля пустые или заполнены данными другого документа

Структура подчинённости
Норма

Новый документ виден в цепочке подчинённых документов основания

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

Документ отсутствует в структуре подчинённости

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

Документ проводится без ошибок, движения корректны

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

Ошибки проведения по остаткам, взаиморасчётам или статусам

Отдельно проверьте отчёты, завязанные на связь документов: «Анализ исполнения заказов», «Остатки к отгрузке», «Ведомость расчётов». Если документ создан без ссылки на основание (например, копированием), заказ в таких отчётах будет числиться неисполненным, хотя товар фактически отгружен.

Типичные ошибки и ограничения

Типичные ошибки
01
Копирование вместо ввода на основании — документ выглядит похожим, но связь с основанием отсутствует, отчёты по исполнению заказов искажаются.
02
Создание документа на основании непроведённого или помеченного на удаление основания — либо команда недоступна, либо данные переносятся некорректно.
03
Игнорирование даты нового документа — документ попадает не в тот период, сбиваются последовательности и отчётность.
04
Ручное изменение табличной части после заполнения без контроля остатков по заказу — возникает отгрузка сверх заказа.
05
Доработка ОбработкаЗаполнения без проверки типа ДанныеЗаполнения — ошибки при создании документа вручную, когда параметр не является ссылкой.

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

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

Маршрут решения

Как выбрать действие

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

Альтернативы вводу на основании

Ввод на основании — не единственный способ ускорить создание документов. Копирование (F9 или кнопка «Скопировать») переносит все данные, но не создаёт связи с исходным документом — подходит для повторяющихся однотипных операций без цепочки. Шаблоны и загрузка из файлов используются для массового ввода первички.

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

Итог

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

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

Часто задаваемые вопросы

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

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

Чем ввод на основании отличается от копирования?

При вводе на основании в новом документе сохраняется ссылка на основание — строится цепочка связанных документов, работают отчёты по исполнению заказов. Копирование просто дублирует данные без связи: документы никак не связаны, и заказ будет считаться неисполненным.

Можно ли создать документ на основании помеченного на удаление?

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

Как создать один документ по нескольким заказам сразу?

Выделите в списке несколько заказов с зажатой клавишей Ctrl и нажмите «Создать на основании». Объединение возможно только при совпадении контрагента, договора, организации и склада. Альтернатива — рабочие места оформления накладных, где видны все незакрытые распоряжения.

Документ создан на основании, но не виден в структуре подчинённости. Что не так?

Скорее всего, ссылка на основание не записалась: документ был создан копированием, поле «Документ основания» очищено вручную или в доработанной процедуре ОбработкаЗаполнения не заполняется реквизит основания. Откройте документ и проверьте поле основания; при доработках — код заполнения.

Нужно ли проводить документ-основание перед созданием подчинённого?

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