Есть документ. У него есть табличная часть "Файлы" (Наименование: Строка, Данные: ХранилищеЗначений). Нужно записывать в табличную часть выбранные пользователем файлы. Сделал так. Может быть есть какие-то способы сделать проще?
&НаСервере
Процедура ДобавитьФайлСервер (Имя,ПолноеИмяФайла)
ДокОбъект = Объект.Ссылка.ПолучитьОбъект();
НовФайл = ДокОбъект.Файлы.Добавить();
НовФайл.Наименование = Имя;
НовФайл.Данные = Новый ХранилищеЗначения(Новый ДвоичныеДанные(ПолноеИмяФайла),Новый СжатиеДанных(9));
ДокОбъект.Записать();
КонецПроцедуры
&НаКлиенте
Процедура ДобавитьФайл(Команда)
ДиалогВыбораФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
Если ДиалогВыбораФайла.Выбрать() Тогда
Имя = ДиалогВыбораФайла.ПолноеИмяФайла;
Поз = Найти(Имя,"\");
Пока Поз <> 0 Цикл
Имя = Сред(Имя,Поз+1,СтрДлина(Имя)-Поз);
Поз = Найти(Имя,"\");
КонецЦикла;
ДобавитьФайлСервер(Имя,ДиалогВыбораФайла.ПолноеИмяФайла);
НовСтрока = Объект.Файлы.Добавить();
НовСтрока.Наименование = Имя;
КонецЕсли;
КонецПроцедуры
не считая что файл с клиента перетащить на сервер надо
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший