Создает новый документ копированием существующего.
Синтаксис
Скопировать()Примеры платформы
Объект = ВыбДокумент.Скопировать();Полное описание, параметры и ограничения
ДокументСсылка.<Имя документа>.Скопировать (DocumentRef.<Document name>.Copy)
ДокументСсылка.<Имя документа> (DocumentRef.<Document name>)
Скопировать (Copy)
Доступен, начиная с версии 8.0.
Синтаксис:
Скопировать()
Возвращаемое значение:
Тип: ДокументОбъект.<Имя документа>.
Описание:
Создает новый документ копированием существующего.
Доступность:
Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер), мобильный автономный сервер.
Примечание:
Использование метода не приводит к записи созданного объекта в базу данных.
Пример:
Объект = ВыбДокумент.Скопировать();
См. также:
ДокументОбъект.<Имя документа>, событие ПриКопировании
Использование в версии:
Доступен, начиная с версии 8.0.
Методическая информация
Практические примеры
Скопировать заявку именно по ссылке и изменить строку только у черновика
Скопировать ссылки возвращает новый объект с табличной частью. Дата и количество копии заданы отдельно, исходные строки/комментарий сохраняются; копия не записывается.
Где и как запускать
Полный серверный модуль новой пустой Учебная85; платформа 8.5.1.1343. Собственные товар/заявка, запись без проведения только с откатом; здесь не запускался.
Подготовка
Создайте НОВУЮ пустую файловую учебную базу, не копию рабочего каталога. В Конфигураторе задайте корню имя Учебная85. Не добавляйте эти объекты в рабочую УТ/КА2/УНФ/БП.
Справочники → Добавить: имя УчебныеТовары. Длина кода 10, тип кода Строка, автонумерация и контроль уникальности включены, длина наименования 100.
Для УчебныеТовары включите иерархию групп и элементов. Добавьте реквизиты Артикул (Строка, длина 20) и Цена (Число, 12 цифр, 2 дробных, неотрицательное). Проверка заполнения для этих учебных реквизитов не устанавливается.
Добавьте табличную часть Штрихкоды: Штрихкод (Строка, длина 20) и Основной (Булево). Обновите конфигурацию базы данных. Модули объектов оставьте пустыми.
Документы → Добавить: имя УчебнаяЗаявка, тип номера Строка, длина 9, автонумерация включена. Проведение запретите: это только учебный документ без движений.
Добавьте реквизит Комментарий (Строка, длина 100) и табличную часть Товары: Товар (СправочникСсылка.УчебныеТовары), Количество (Число, 9 цифр, 0 дробных, неотрицательное), Цена (Число, 12 цифр, 2 дробных, неотрицательное). Модуль документа пустой.
Обновите конфигурацию базы данных. Эти имена существуют только в созданной учебной конфигурации, не подразумеваются в типовой базе.
У своего документа и товара модули пустые, подписок, расширений и внешних обработчиков нет. История данных выключена; проведение УчебнаяЗаявка запрещено, движения/регистры не создаются.
Номер заявки здесь строковый длиной 9, с автонумерацией. Для иной числовой нумерации нельзя копировать проверки Строка. Дата задаётся собственным литералом, не читается из рабочего документа.
Свойства ссылки readonly. Непустой UUID/ссылка не означает наличие записи, а ВерсияДанных — непрозрачная строка, не номер документа или версия конфигурации.
Примеры здесь не запускались в 1С. Только код и установленная справка 8.5.1.1343; ваши документы не создавались, не проводились и не удалялись.
Создайте серверный общий модуль УчебныеСсылкиДокументов и вставьте весь модуль одного урока. ВыполнитьПример() Экспорт вызывайте из своей процедуры формы с &НаСервереБезКонтекста; обновите конфигурацию БД.
Опыт записи допускается только вне чужой транзакции. Внутри собственной транзакции создаются один свой новый товар и одна своя заявка, затем обе записи отменяются при успехе и при ошибке.
Откат базы не отменяет внешние действия обработчиков, поэтому допускается лишь подготовленная новая пустая база. Не заменяйте ОтменитьТранзакцию фиксацией.
Процедура ВыполнитьПример() Экспорт
Если Метаданные.Справочники.Найти("УчебныеТовары") = Неопределено Тогда
ВызватьИсключение "Сначала создайте учебный справочник по подготовке";
КонецЕсли;
Если Метаданные.Документы.Найти("УчебнаяЗаявка") = Неопределено Тогда
ВызватьИсключение "Сначала подготовьте собственную УчебнаяЗаявка";
КонецЕсли;
Если ТранзакцияАктивна() Тогда
ВызватьИсключение "Не запускайте урок внутри чужой транзакции";
КонецЕсли;
СозданныеСсылки = Новый Массив;
НачатьТранзакцию();
Попытка
Товар = Справочники.УчебныеТовары.СоздатьЭлемент();
Товар.Наименование = "Собственная книга заявки";
Товар.Артикул = "DOC-OWN-01";
Товар.Цена = 250;
Товар.УстановитьНовыйКод("У");
Товар.Записать();
СозданныеСсылки.Добавить(Товар.Ссылка);
Заявка = Документы.УчебнаяЗаявка.СоздатьДокумент();
Заявка.Дата = Дата(2026, 10, 6, 12, 0, 0);
Заявка.Комментарий = "Собственный источник копии";
Первая = Заявка.Товары.Добавить();
Первая.Товар = Товар.Ссылка;
Первая.Количество = 3;
Первая.Цена = 250;
Вторая = Заявка.Товары.Добавить();
Вторая.Товар = Товар.Ссылка;
Вторая.Количество = 1;
Вторая.Цена = 50;
Заявка.УстановитьНовыйНомер("У");
Заявка.Записать(РежимЗаписиДокумента.Запись);
СозданныеСсылки.Добавить(Заявка.Ссылка);
Читаемая = Заявка.Ссылка;
Копия = Читаемая.Скопировать();
Копия.Дата = Дата(2026, 10, 7, 12, 0, 0);
Копия.Комментарий = "Независимый собственный черновик";
Копия.Товары.Получить(0).Количество = 1;
Сообщить(ТипЗнч(Копия) = Тип("ДокументОбъект.УчебнаяЗаявка"));
Сообщить(Копия.ЭтоНовый());
Сообщить(Копия.Ссылка.Пустая());
Сообщить(Копия.Товары.Количество() = 2);
Сообщить(Не Копия.Проведен);
Сообщить(Читаемая.Дата = Дата(2026, 10, 6, 12, 0, 0));
Исходная = Читаемая.ПолучитьОбъект();
Если Исходная = Неопределено Тогда
ВызватьИсключение "Собственный источник внутри транзакции отсутствует";
КонецЕсли;
Сообщить(Исходная.Комментарий = "Собственный источник копии");
Сообщить(Исходная.Товары.Получить(0).Количество = 3);
Сообщить("Копия не записана и не проведена; номер не назначается копированием вручную");
ОтменитьТранзакцию();
Исключение
Если ТранзакцияАктивна() Тогда
ОтменитьТранзакцию();
КонецЕсли;
ВызватьИсключение;
КонецПопытки;
Сообщить(Не ТранзакцияАктивна());
Для Каждого СозданнаяСсылка Из СозданныеСсылки Цикл
Сообщить(СозданнаяСсылка.ПолучитьОбъект() = Неопределено);
КонецЦикла;
КонецПроцедурыРазбор по шагам
Записать собственный товар и заявку только внутри своей отменяемой транзакции.
Получить настоящую ссылку заявки и вызвать Скопировать на ней, не на неизвестном входном объекте.
У копии явно установить свою дату и комментарий, изменить количество первой строки.
Проверить новый объект, пустую ссылку, две строки и отсутствие проведения.
Получить источник по ссылке и проверить прежние дату, комментарий и количество 3.
Не сохранять/не проводить копию; откатить обе собственные исходные записи.
Как проверить результат
Восемь сравнений независимой копии Истина.
Копия остаётся новым непроведённым объектом; Копия.Записать отсутствует.
После отката оба собственных исходника отсутствуют; никаких движений не создаётся.
Ожидаемый результат
Проверены объектный результат копирования ссылки и независимость табличной части.
На что обратить внимание
Дата документа — его реквизит, не дата фактической записи и не гарантированный UTC. Здесь сравнивается один заданный собственный литерал.
Проведен и ПометкаУдаления не являются номером, правами доступа или подтверждением бизнес-корректности.
Скопировать возвращает новый объект, не сохранённую ссылку. Номер/дату копии не считайте гарантированно одинаковыми с исходником.
Только свои записи создаются внутри новой транзакции и откатываются; рабочие документы и движения не используются.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.