Такая задача возникает постоянно. Можно это делать внешней обработкой или внутри конфигурации. В целом алгоритм одинаковый. Самый простой пример. Выбираем все документы: ДокументыДляИзменения = Документы.ПоступлениеВКассу.Выбрать(); Дальше в цикле надо обязательно получить документ, чтобы производить с ним любые манипуляции: ТекДок = ДокументыДляИзменения.ПолучитьОбъект(); После того как получили документ устанавливаем нужный нам реквизит: ТекДок.Контрагент = Объект.Контрагент; Все изменения документов производят либо на сервере, либо в толстом клиенте. После изменения документ надо обязательно записать в базу. И это надо сделать в режиме проведения, чтобы изменились движения по регистрам. Если они есть: ТекДок.Записать(РежимЗаписиДокумента.Проведение); Совет: для наглядности всегда лучше использовать метод Сообщить. Например так: Сообщить("Изменен контрагент в документе " + ТекДок.Ссылка + ".Установлен " + ТекДок.Контрагент); Пример кода из внешней обработки: Показал как можно это сд
Как программно изменить реквизиты документа: 1С Программирование
28 июня28 июн
93
~1 мин