Создает таблицу значений и копирует в нее записи набора. Структура полученной таблицы совпадает со структурой набора записей.
Синтаксис
Выгрузить(<Строки>, <Колонки>)Полное описание, параметры и ограничения
ПоследовательностьНаборЗаписей.<Имя последовательности>.Выгрузить (SequenceRecordSet.<Sequence name>.Unload)
ПоследовательностьНаборЗаписей.<Имя последовательности> (SequenceRecordSet.<Sequence name>)
Выгрузить (Unload)
Доступен, начиная с версии 8.1.
Синтаксис:
Выгрузить(<Строки>, <Колонки>)
Параметры:
<Строки> (необязательный)
Тип: Массив.
Массив строк для выгрузки. Если не указан, выгружаются все строки набора записей.
<Колонки> (необязательный)
Тип: Строка.
Список колонок для выгрузки в формате: "Колонка1, Колонка2...". Если список не задан, то будут выгружены все колонки.
Возвращаемое значение:
Тип: ТаблицаЗначений.
Описание:
Создает таблицу значений и копирует в нее записи набора.
Структура полученной таблицы совпадает со структурой набора записей.
Доступность:
Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер), мобильный автономный сервер.
Использование в версии:
Доступен, начиная с версии 8.1.
Методическая информация
Практические примеры
Выгрузить снимок, пустую схему и одну выбранную дату
Выгрузить копирует данные; ВыгрузитьКолонки возвращает структуру без строк. Проекция одной собственной записи не получает лишний Регистратор, а изменение снимка не меняет исходный набор.
Где и как запускать
Полный серверный общий модуль УчебныеНаборыПоследовательности85 собственной новой конфигурации УчебныеПоследовательности85, точная 8.5.1.1343. Только собственный черновик памяти; 1С здесь не запускалась, записей базы нет.
Подготовка
Создайте новую отдельную пустую базу 8.5.1.1343, не копию рабочей УТ/КА2. Имя конфигурации УчебныеПоследовательности85, язык встроенного языка Русский, ОсновнойРежимЗапуска=УправляемоеПриложение, режим совместимости Не использовать. Расширений, подписок и обработчиков записи нет.
В Документы создайте единственный документ УчебнаяРегистрация85: проведение запрещено, реквизитов и табличных частей нет, движения регистров не назначены, модули объекта и менеджера пусты. Документы этого вида в уроке не создаются и не записываются.
В Последовательности создайте единственную УчебнаяОчередь85. В составе Документы выберите только свой УчебнаяРегистрация85. Измерений, зависимых регистров в составе Движения и дополнительных индексов нет. ПеремещениеГраницыПриПроведении=НеПеремещать. Модуль набора пуст. Структура записей поэтому содержит только Период и Регистратор.
Не создавайте в стенде справочников и регистров. Для учебного пользователя разрешите собственные метаданные, общую форму и команды. Обновите только эту новую конфигурацию. Проверка имени и состава схемы выполняется до создания набора; она не доказывает отсутствия записей базы и не делает рабочую базу безопасной.
В Общие → Общие модули создайте УчебныеНаборыПоследовательности85: Сервер=Истина, ВызовСервера=Истина, Глобальный=Ложь, клиентские флаги выключены. Полный основной модуль одного выбранного урока вставьте на верхнем уровне целиком. Все помощники предоставлены ниже в том же модуле.
В Общие → Общие формы создайте управляемую форму УчебныйЗапускПоследовательности85. Добавьте команду ВыполнитьУрок с действием ВыполнитьУрок, ИзменяетСохраняемыеДанные=Ложь и кнопку Выполнить урок. Полный модуль формы:
&НаКлиенте
Процедура ВыполнитьУрок(Команда)
ВыполнитьУрокНаСервере();
КонецПроцедуры&НаСервереБезКонтекста
Процедура ВыполнитьУрокНаСервере()
УчебныеНаборыПоследовательности85.ВыполнитьПример();
КонецПроцедурыВ Общие → Общие команды создайте ОткрытьНаборПоследовательности85 без параметра и включите в свой учебный раздел. Полный модуль общей команды:
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
ОткрытьФорму("ОбщаяФорма.УчебныйЗапускПоследовательности85");
КонецПроцедуры
Откройте свою форму этой командой и выполните её кнопку. Два вспомогательных модуля не вставляйте в основной серверный модуль.Плановые ссылки создаются ПолучитьСсылку на собственные новые UUID. Непустая ссылка не означает существующий документ; реквизиты ссылок не читаются. Это идентификаторы собственных незаписанных черновых строк, не готовые записи для сохранения в базу.
Здесь нет Прочитать, Записать, проведения, восстановления или изменения границы. Добавить/Загрузить/Удалить/Очистить действуют только на принадлежащий уроку экземпляр набора в памяти. Этот пример нельзя превращать в исправление последовательности добавлением Записать.
Статически проверены исходный код и установленная справка. Компиляция и выполнение в 1С здесь не проверялись; ожидаемые результаты далее нужно подтвердить самостоятельным запуском только в подготовленной новой учебной базе.
Процедура ВыполнитьПример() Экспорт
Если Метаданные.Последовательности.Количество() <> 1 Или Метаданные.Документы.Количество() <> 1 Тогда
ВызватьИсключение "В своём стенде нужны ровно одна последовательность и один вид документа";
КонецЕсли;
МетаОчереди = Метаданные.Последовательности.Найти("УчебнаяОчередь85");
МетаДокумента = Метаданные.Документы.Найти("УчебнаяРегистрация85");
Если МетаОчереди = Неопределено Или МетаДокумента = Неопределено Тогда
ВызватьИсключение "Не подготовлена собственная схема урока";
КонецЕсли;
Если МетаОчереди.Измерения.Количество() <> 0 Или МетаОчереди.Движения.Количество() <> 0
Или МетаОчереди.Документы.Количество() <> 1 Тогда
ВызватьИсключение "Нужна собственная очередь без измерений и зависимых регистров";
КонецЕсли;
Участвует = Ложь;
Для Каждого МетаУчастника Из МетаОчереди.Документы Цикл
Участвует = МетаУчастника = МетаДокумента;
КонецЦикла;
Если Не Участвует Тогда
ВызватьИсключение "Единственный участник должен быть своим УчебнаяРегистрация85";
КонецЕсли;
Если МетаОчереди.ПеремещениеГраницыПриПроведении <> Метаданные.СвойстваОбъектов.ПеремещениеГраницыПриПроведении.НеПеремещать Тогда
ВызватьИсключение "Проверьте подготовку политики границы собственной очереди";
КонецЕсли;
Набор = Последовательности.УчебнаяОчередь85.СоздатьНаборЗаписей();
Если Набор.Количество() <> 0 Или Набор.Метаданные() <> МетаОчереди Тогда
ВызватьИсключение "Ожидался новый пустой набор собственной последовательности";
КонецЕсли;
Ссылки = Новый Массив;
Для Номер = 1 По 3 Цикл
Ссылки.Добавить(Документы.УчебнаяРегистрация85.ПолучитьСсылку(Новый УникальныйИдентификатор));
КонецЦикла;
ДобавитьСвоюЗапись(Набор, Дата(2026, 1, 1), Ссылки[0]);
ДобавитьСвоюЗапись(Набор, Дата(2026, 2, 1), Ссылки[1]);
ДобавитьСвоюЗапись(Набор, Дата(2026, 3, 1), Ссылки[2]);
Снимок = Набор.Выгрузить();
Схема = Набор.ВыгрузитьКолонки("Период,Регистратор");
Если Снимок.Количество() <> 3 Или Снимок.Колонки.Количество() <> 2
Или Схема.Количество() <> 0 Или Схема.Колонки.Количество() <> 2 Тогда
ВызватьИсключение "Полный снимок и пустая схема перепутаны";
КонецЕсли;
Для ИндексСтроки = 0 По 2 Цикл
ПроверитьСвоюЗапись(Снимок[ИндексСтроки], Дата(2026, ИндексСтроки + 1, 1), Ссылки[ИндексСтроки]);
КонецЦикла;
Выбранные = Новый Массив;
Выбранные.Добавить(Набор[1]);
ОдинПериод = Набор.Выгрузить(Выбранные, "Период");
Если ОдинПериод.Количество() <> 1 Или ОдинПериод.Колонки.Количество() <> 1
Или ОдинПериод[0].Период <> Дата(2026, 2, 1) Тогда
ВызватьИсключение "Проекция должна содержать только февральскую дату";
КонецЕсли;
Если ОдинПериод.Колонки.Найти("Регистратор") <> Неопределено Тогда
ВызватьИсключение "Лишняя колонка попала в проекцию";
КонецЕсли;
Снимок[0].Период = Дата(2026, 12, 1);
Для ИндексСтроки = 0 По 2 Цикл
ПроверитьСвоюЗапись(Набор[ИндексСтроки], Дата(2026, ИндексСтроки + 1, 1), Ссылки[ИндексСтроки]);
КонецЦикла;
Сообщить("Снимок независим; схема содержит только колонки; проекция содержит февраль");
КонецПроцедуры
Процедура ДобавитьСвоюЗапись(Набор, Период, Регистратор)
Если ТипЗнч(Период) <> Тип("Дата") Или ТипЗнч(Регистратор) <> Тип("ДокументСсылка.УчебнаяРегистрация85") Тогда
ВызватьИсключение "Переданы неверные собственные ключи строки";
КонецЕсли;
Запись = Набор.Добавить();
Запись.Период = Период;
Запись.Регистратор = Регистратор;
КонецПроцедуры
Процедура ПроверитьСвоюЗапись(Запись, Период, Регистратор)
Если ТипЗнч(Запись.Период) <> Тип("Дата") Или ТипЗнч(Запись.Регистратор) <> Тип("ДокументСсылка.УчебнаяРегистрация85") Тогда
ВызватьИсключение "Типы фактической собственной записи не совпали";
КонецЕсли;
Если Запись.Период <> Период Или Запись.Регистратор <> Регистратор Тогда
ВызватьИсключение "Период или регистратор собственной записи не совпал";
КонецЕсли;
КонецПроцедурыРазбор по шагам
Заново получить свои три строки января/февраля/марта по полной подготовке, без чтения базы.
Выгрузить весь набор: три строки, два столбца. Проверить оба поля каждой строки снимка.
ВыгрузитьКолонки("Период,Регистратор") создаёт таблицу с двумя столбцами и нулём строк; не выдавать её за копию данных.
В массив выбора добавить саму вторую запись своего набора, не индекс и не строку ТаблицаЗначений.
Выгрузить выбранные строки с колонкой Период: проверить единственную февральскую дату и отсутствие Регистратор.
Изменить только январскую дату снимка на декабрьскую и повторно сверить все три исходные записи.
Как проверить результат
Снимок 3×2, пустая схема 0×2, проекция 1×1 с точной февральской датой.
В проекции нет колонки Регистратор; исходный набор после изменения снимка по-прежнему январь/февраль/март со своими ссылками.
Ожидаемый результат
Три разные формы выгрузки решают разные задачи, а независимость копии проверена кодом.
На что обратить внимание
Набор создаётся пустым: это не чтение существующих регистраций. Количество считает только строки своего экземпляра памяти, не документы базы.
Плановые ссылки принадлежат своему типу, но документы не записаны. Не читайте у них дату/номер и не объявляйте их существующими.
Для индексных методов нумерация с нуля. После удаления индексы оставшихся строк меняются; ссылка на строку и её текущий индекс — разные вещи.
Удалить и Очистить здесь удаляют лишь черновые строки памяти. Они не отменяют документ и не исправляют границу последовательности.
Readonly-свойство набора нельзя заменить новым значением. ДополнительныеСвойства допускает работу с содержимым возвращённой структуры, не присваивание новой структуры свойству.
Модифицированность не обнаруживает изменения других пользователей и не подтверждает сохранение. ЭтотОбъект относится к модулю набора; в общем модуле данного урока не применяется.
Python-тесты не исполняют платформу. Полный модуль надо отдельно скомпилировать и испытать в собственной подготовленной конфигурации; рабочие данные здесь не менялись.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.