//Вызывается на сервере. Файл - ссылка на элемент справочника присоединённых
//файлов (например, ЗаказКлиентаПрисоединенныеФайлы). Где лежат данные -
//в базе или в томе на диске - функция разбирается сама
Запрос = Новый Запрос(
"ВЫБРАТЬ ПЕРВЫЕ 1
| Файлы.Ссылка КАК Файл
|ИЗ
| Справочник.ЗаказКлиентаПрисоединенныеФайлы КАК Файлы
|ГДЕ
| Файлы.ВладелецФайла = &Заказ");
Запрос.УстановитьПараметр("Заказ", Документы.ЗаказКлиента.НайтиПоНомеру(
"00000015", '20261001'));
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() Тогда
//Второй параметр Ложь: вместо исключения вернуть Неопределено,
//если двоичных данных нет ни в базе, ни в томах
ДанныеФайла = РаботаСФайлами.ДвоичныеДанныеФайла(Выборка.Файл, Ложь);
Если ДанныеФайла <> Неопределено Тогда
ДанныеФайла.Записать(ПолучитьИмяВременногоФайла("pdf"));
КонецЕсли;
КонецЕсли;
//Без БСП - пришлось бы самим выяснять, где хранятся данные файла:
//в информационной базе или в томе на диске, и читать их оттуда
//по правилам хранения БСП. Функция скрывает это различие