Создаём тестовый текст, копируем, переименовываем копию и меняем атрибут Только чтение только у неё.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
Используйте учебную файловую базу под Windows. Служебная учётная запись 1С должна иметь доступ к своему временному каталогу.
Пример создаёт только уникальные учебные файлы через ПолучитьИмяВременногоФайла. Не подставляйте пути к рабочим документам.
Все текстовые файлы читаются с явно указанной кодировкой UTF-8. Пустая строка не означает конец файла.
Учебный пример рассчитан на файловую систему Windows; атрибуты и точность времени на других ОС могут отличаться.
ИсходныйПуть = ПолучитьИмяВременногоФайла("txt");
ПутьКопии = ПолучитьИмяВременногоФайла("txt");
НовыйПуть = ПолучитьИмяВременногоФайла("txt");
СозданныеПути = Новый Массив;
СозданныеПути.Добавить(ИсходныйПуть);
СозданныеПути.Добавить(ПутьКопии);
СозданныеПути.Добавить(НовыйПуть);
Попытка
Документ = Новый ТекстовыйДокумент;
Документ.УстановитьТекст("Только учебные данные");
Документ.Записать(ИсходныйПуть, КодировкаТекста.UTF8);
КопироватьФайл(ИсходныйПуть, ПутьКопии);
ПереместитьФайл(ПутьКопии, НовыйПуть);
Копия = Новый Файл(НовыйПуть);
Сообщить(Копия.Существует());
Сообщить(Копия.ЭтоФайл());
Сообщить(Копия.ЭтоКаталог());
Сообщить(Копия.ПолноеИмя);
Сообщить(Копия.Путь);
Сообщить(Копия.Размер());
Копия.УстановитьВремяИзменения(Дата(2026, 9, 15, 12, 0, 0));
Сообщить(Формат(Копия.ПолучитьВремяИзменения(), "ДФ=yyyy-MM-dd HH:mm:ss"));
Копия.УстановитьТолькоЧтение(Истина);
Сообщить(Копия.ПолучитьТолькоЧтение());
Копия.УстановитьТолькоЧтение(Ложь);
Прочитанный = Новый ТекстовыйДокумент;
Прочитанный.Прочитать(НовыйПуть, КодировкаТекста.UTF8);
Сообщить(Прочитанный.ПолучитьТекст());
Исключение
Для Каждого Путь Из СозданныеПути Цикл
УчебныйФайл = Новый Файл(Путь);
Если УчебныйФайл.Существует() Тогда
УчебныйФайл.УстановитьТолькоЧтение(Ложь);
УдалитьФайлы(Путь);
КонецЕсли;
КонецЦикла;
ВызватьИсключение;
КонецПопытки;
Для Каждого Путь Из СозданныеПути Цикл
УчебныйФайл = Новый Файл(Путь);
Если УчебныйФайл.Существует() Тогда
УчебныйФайл.УстановитьТолькоЧтение(Ложь);
УдалитьФайлы(Путь);
КонецЕсли;
КонецЦикла;Разбор по шагам
Получаем три уникальных пути: источник, промежуточная копия и переименованный результат.
КопироватьФайл сохраняет источник; ПереместитьФайл переносит именно копию, поэтому промежуточного файла больше нет.
Проверяем тип пути и размер, задаём фиксированное время изменения и включаем Только чтение.
Снимаем атрибут перед очисткой; Прочитать проверяет, что содержимое копии сохранилось. Удаляем только три собственных пути.
Как проверить результат
Существует и ЭтоФайл — Истина, ЭтоКаталог — Ложь; текст копии Только учебные данные.
Время изменения: 2026-09-15 12:00:00 с учётом точности вашей файловой системы; Только чтение после установки — Истина.
Промежуточная копия отсутствует после перемещения. После завершения все три учебных пути отсутствуют.
Ожидаемый результат
Копия создана, переименована, проверена и удалена вместе с собственным источником.
На что обратить внимание
Установка атрибута или даты изменяет файл: используйте исключительно созданную учебную копию.
Копирование или перемещение может перезаписать существующий файл; уникальные пути здесь выбраны именно для предотвращения такой ситуации.
Это не резервное копирование рабочих данных и не гарантия атомарности между дисками.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.