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

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

Как в 1С связать документы между собой

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

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

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

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

Какие виды связей документов существуют в 1С

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

Первый вид — связь по основанию. У документа есть реквизит «Основание» (или «ДокументОснование»), который хранит ссылку на породивший его документ. Именно эта связь используется для построения цепочек «Заказ → Реализация → Счёт-фактура» и для контроля: сколько по заказу отгружено, сколько оплачено.

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

Третий вид — критерии отбора. Это механизм платформы, который автоматически собирает и показывает все документы, связанные с выбранным. В типовых конфигурациях он вызывается кнопкой «Связанные документы» или «Структура подчинённости».

Как связать документы через ввод на основании

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

Порядок действий в типовой конфигурации (1С:Бухгалтерия, Управление торговлей, ERP):

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

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

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

Как связать уже созданные документы вручную

Частая ситуация: документы созданы по отдельности, без ввода на основании, и связь между ними отсутствует. В этом случае её можно установить вручную через реквизит-основание.

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

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

Если подчинённый документ раньше был связан с другим основанием, старая связь будет заменена. Проверьте отчёты по взаиморасчётам до и после замены, чтобы исключить двойной зачёт или потерю зачёта аванса.

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

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

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

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

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

Как проверить и найти связанные документы

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

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

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

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

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

Новый документ виден в цепочке, переход по нему открывает правильную форму

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

Документа нет в цепочке — связь не установлена или документ не проведён

Отчёт по взаиморасчётам / состоянию заказа
Норма

Отгрузка и оплата отражаются напротив конкретного заказа или счёта

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

Суммы висят «в целом по контрагенту» без привязки к документу

Поле «Основание» в подчинённом документе
Норма

Поле заполнено ссылкой на нужный документ

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

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

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

Как настроить связь документов в конфигураторе

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

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

Для хранения связи добавьте реквизит типа «ДокументСсылка» (например, «ДокументОснование») с составным типом, если оснований может быть несколько видов. Чтобы данные переносились автоматически, используется обработчик «ОбработкаЗаполнения» в модуле объекта подчинённого документа.

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

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

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

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

Большинство проблем со связями возникает не из-за сбоев программы, а из-за нарушения порядка работы. Ниже — ошибки, которые встречаются чаще всего.

Типичные ошибки
01
Создание документов копированием вместо ввода на основании: данные переносятся, но связь не устанавливается, и контроль по заказу не работает
02
Забытое перепроведение после ручного заполнения основания: ссылка в документе есть, а движения по регистрам старые
03
Смена основания у документа закрытого периода без резервной копии: перепроведение меняет регистры и нарушает сданную отчётность
04
Ручное указание документа расчётов в платёжке без проверки остатков: долг «зависает» на одном документе и дублируется на другом
05
Удаление документа-основания без проверки ссылок: у подчинённых документов остаются «битые» ссылки вида «Объект не найден»

Отдельная группа проблем — «битые ссылки». Если документ-основание удалили, в подчинённых документах вместо ссылки появляется запись «<Объект не найден>». Проверить и устранить такие ситуации можно через «Администрирование → Обслуживание → Поиск и удаление дублей» и штатную проверку ссылочной целостности при тестировании и исправлении базы — но тестирование запускайте только на копии.

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

Можно ли связать документы разных видов, для которых ввод на основании не настроен?

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

Почему в структуре подчинённости не виден созданный документ?

Наиболее частые причины: документ не проведён, связь не установлена (документ создан копированием, а не на основании), либо у пользователя нет прав на просмотр этого вида документов. Проверьте поле «Основание» в самом документе и права доступа.

Как разорвать связь между документами?

Откройте подчинённый документ, очистите поле «Основание» (или удалите строку в табличной части расчётов) и перепроведите документ. Учтите, что после этого контроль по заказу или счёту перестанет учитывать этот документ — проверьте отчёты по взаиморасчётам.

Что делать, если вместо основания отображается «Объект не найден»?

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

Влияет ли связь документов на проведение и отчёты?

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

Можно ли связать документы в разных информационных базах?

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

Итог

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

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