Необходимо для конвертации, нужно перенести из одной сильно-покоцаной базы в другую.
Выборка идёт настолько медленно, а в какой-то момент исходная база вылетает с формулировкой "невостановимая ошибка"
Текст запроса

```1c
    ВЫБРАТЬ
    ИСТИНА КАК Активность,
    ХранимыеФайлыВерсий.ВерсияФайла,
    ХранимыеФайлыВерсий.ХранимыйФайл
    ИЗ
    РегистрСведений.ХранимыеФайлыВерсий КАК ХранимыеФайлыВерсий
```

Реквизит ХранимыйФайл - хранилище значений, двоичные данные.

Есть ли вариант либо быстрее сделать выборку или по другому перенести присоединённые файлы?
---
Ню, вобщем нашёл не очень красивое решение, но вроде бы работает
Примерно выяснил сколько выгружаемых записей. Оказалось почти 6000
Сделал три почти одинаковых ПВД.
Поставил способ выгрузки "Произвольный алгоритм"
В событиях "Перед выгрузкой" каждого ПВД поставил примерно одиниковый алгоритм выборки, отличающийся только счетчиком записей

```1c
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ИСТИНА КАК Активность,
    | ХранимыеФайлыВерсий.ВерсияФайла КАК ВерсияФайла,
    | ХранимыеФайлыВерсий.ХранимыйФайл КАК ХранимыйФайл
    |ИЗ
    | РегистрСведений.ХранимыеФайлыВерсий КАК ХранимыеФайлыВерсий
    |ГДЕ ХранимыеФайлыВерсий.ВерсияФайла.Владелец.ВладелецФайла ССЫЛКА Справочник.ДоговорыКонтрагентов
    |";

    Результат = Запрос.Выполнить();

    ВыборкаДетальныеЗаписи = Результат.Выбрать();
    и1=0;
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
    Если и1<=2000 Тогда
    ВыгрузитьПоПравилу(ВыборкаДетальныеЗаписи,,,,"ХранимыеФайлыВерсий_ДоговораКонтрагентов",,,,,);
    КонецЕсли;
    и1 = и1+1;
    КонецЦикла;
```

```1c
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ИСТИНА КАК Активность,
    | ХранимыеФайлыВерсий.ВерсияФайла КАК ВерсияФайла,
    | ХранимыеФайлыВерсий.ХранимыйФайл КАК ХранимыйФайл
    |ИЗ
    | РегистрСведений.ХранимыеФайлыВерсий КАК ХранимыеФайлыВерсий
    |ГДЕ ХранимыеФайлыВерсий.ВерсияФайла.Владелец.ВладелецФайла ССЫЛКА Справочник.ДоговорыКонтрагентов
    |";

    Результат = Запрос.Выполнить();

    ВыборкаДетальныеЗаписи = Результат.Выбрать();
    и1=0;
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
    Если и1>2000 и и1<=4000 Тогда
    ВыгрузитьПоПравилу(ВыборкаДетальныеЗаписи,,,,"ХранимыеФайлыВерсий_ДоговораКонтрагентов",,,,,);
    КонецЕсли;
    и1 = и1+1;
    КонецЦикла;
```

```1c
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ИСТИНА КАК Активность,
    | ХранимыеФайлыВерсий.ВерсияФайла КАК ВерсияФайла,
    | ХранимыеФайлыВерсий.ХранимыйФайл КАК ХранимыйФайл
    |ИЗ
    | РегистрСведений.ХранимыеФайлыВерсий КАК ХранимыеФайлыВерсий
    |ГДЕ ХранимыеФайлыВерсий.ВерсияФайла.Владелец.ВладелецФайла ССЫЛКА Справочник.ДоговорыКонтрагентов
    |";

    Результат = Запрос.Выполнить();

    ВыборкаДетальныеЗаписи = Результат.Выбрать();
    и1=0;
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
    Если и1>4000 Тогда
    ВыгрузитьПоПравилу(ВыборкаДетальныеЗаписи,,,,"ХранимыеФайлыВерсий_ДоговораКонтрагентов",,,,,);
    КонецЕсли;
    и1 = и1+1;
    КонецЦикла;
```

Правда, три раза делается один запрос, а он каждый раз сильно грузит систему. Ну, не очень красиво, зато работает
---
А каким образом далее вы передаете двоичные данные через КД?
---
Двоичные данные прекрасно переходят. Каждая конкретная запись вполне нормально переносится.
У меня другая проблема: выборка на исходной базе затыкается.
---
Сообщение было скрыто модератором.
---
Ню, вобщем нашёл не очень красивое решение, но вроде бы работает
Примерно выяснил сколько выгружаемых записей. Оказалось почти 6000
Сделал три почти одинаковых ПВД.
Поставил способ выгрузки "Произвольный алгоритм"
В событиях "Перед выгрузкой" каждого ПВД поставил примерно одиниковый алгоритм выборки, отличающийся только счетчиком записей

```1c
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ИСТИНА КАК Активность,
    | ХранимыеФайлыВерсий.ВерсияФайла КАК ВерсияФайла,
    | ХранимыеФайлыВерсий.ХранимыйФайл КАК ХранимыйФайл
    |ИЗ
    | РегистрСведений.ХранимыеФайлыВерсий КАК ХранимыеФайлыВерсий
    |ГДЕ ХранимыеФайлыВерсий.ВерсияФайла.Владелец.ВладелецФайла ССЫЛКА Справочник.ДоговорыКонтрагентов
    |";

    Результат = Запрос.Выполнить();

    ВыборкаДетальныеЗаписи = Результат.Выбрать();
    и1=0;
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
    Если и1<=2000 Тогда
    ВыгрузитьПоПравилу(ВыборкаДетальныеЗаписи,,,,"ХранимыеФайлыВерсий_ДоговораКонтрагентов",,,,,);
    КонецЕсли;
    и1 = и1+1;
    КонецЦикла;
```

```1c
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ИСТИНА КАК Активность,
    | ХранимыеФайлыВерсий.ВерсияФайла КАК ВерсияФайла,
    | ХранимыеФайлыВерсий.ХранимыйФайл КАК ХранимыйФайл
    |ИЗ
    | РегистрСведений.ХранимыеФайлыВерсий КАК ХранимыеФайлыВерсий
    |ГДЕ ХранимыеФайлыВерсий.ВерсияФайла.Владелец.ВладелецФайла ССЫЛКА Справочник.ДоговорыКонтрагентов
    |";

    Результат = Запрос.Выполнить();

    ВыборкаДетальныеЗаписи = Результат.Выбрать();
    и1=0;
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
    Если и1>2000 и и1<=4000 Тогда
    ВыгрузитьПоПравилу(ВыборкаДетальныеЗаписи,,,,"ХранимыеФайлыВерсий_ДоговораКонтрагентов",,,,,);
    КонецЕсли;
    и1 = и1+1;
    КонецЦикла;
```

```1c
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ИСТИНА КАК Активность,
    | ХранимыеФайлыВерсий.ВерсияФайла КАК ВерсияФайла,
    | ХранимыеФайлыВерсий.ХранимыйФайл КАК ХранимыйФайл
    |ИЗ
    | РегистрСведений.ХранимыеФайлыВерсий КАК ХранимыеФайлыВерсий
    |ГДЕ ХранимыеФайлыВерсий.ВерсияФайла.Владелец.ВладелецФайла ССЫЛКА Справочник.ДоговорыКонтрагентов
    |";

    Результат = Запрос.Выполнить();

    ВыборкаДетальныеЗаписи = Результат.Выбрать();
    и1=0;
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
    Если и1>4000 Тогда
    ВыгрузитьПоПравилу(ВыборкаДетальныеЗаписи,,,,"ХранимыеФайлыВерсий_ДоговораКонтрагентов",,,,,);
    КонецЕсли;
    и1 = и1+1;
    КонецЦикла;
```

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