Добавить файл к документу программно. Розница 2.3
Попытался поискать как это сделать, нашел тему на инфостарте и такой код:
ИмяВременногоФайла = ПолучитьИмяВременногоФайла("pdf"); ЛистСогласования.Записать(ИмяВременногоФайла, ТипФайлаТабличногоДокумента.PDF); ДвоичныеДанные = Новый ДвоичныеДанные(ИмяВременногоФайла); адресВХранилище = ПоместитьВоВременноеХранилище(ДвоичныеДанные); ПрисоединенныйФайл = ПрисоединенныеФайлы.ДобавитьФайл(ВладелецФайлов, "Лист согласования", "pdf", , , адресВХранилище); УдалитьФайлы(ИмяВременногоФайла);
Но видимо, это не для розницы, 2.3, там нет модуля ПрисоединенныеФайлы.
У меня используется небольшое расширение с префиксом фдд, которое позволяет в рознице прикреплять файлы к нужному документу, путем создания папки под каждый документ, поэтому я еще вызываю определение папки файлов для файла. Без папки файлов файл не сохранится.
На клиенте определяю имя и расширение файла, сохраняю двоичные данные файла:
Ф = Новый Файл(ВыбИмяФайла); Если Ф.Существует() Тогда ДД = Новый ДвоичныеДанные(ВыбИмяФайла); Расширение = Ф.Расширение; Расширение = СтрЗаменить(Расширение, ".", ""); ИмяБезРасширения = Ф.ИмяБезРасширения; Иначе ДД = Неопределено; Расширение = Неопределено; ИмяБезРасширения = Неопределено; КонецЕсли; ПеренестиВДокументНаСервере(ДД, ИмяБезРасширения, Расширение);
На сервере после записи документа вызываю прикрепление к нему файла:
НовыйОбъект.Записать(); Сообщить("Записан документ: " + НовыйОбъект); Если ДД <> Неопределено Тогда Попытка ВладелецФайлов = Вычислить("фдд_Сервер.ДатьПапкуДокумента(ВыбДокумент)"); Исключение ВладелецФайлов = Неопределено; КонецПопытки; //Должна быть определена папка файлов Если ВладелецФайлов <> Неопределено Тогда АдресВХранилище = ПоместитьВоВременноеХранилище(ДД); ПараметрыФайла = РаботаСФайлами.ПараметрыДобавленияФайла(); ПараметрыФайла.ИмяБезРасширения = ИмяБезРасширения; ПараметрыФайла.РасширениеБезТочки = РасширениеБезТочки; ПараметрыФайла.ВладелецФайлов = ВладелецФайлов; СсылкаНаФайл = РаботаСФайлами.ДобавитьФайл(ПараметрыФайла, АдресВХранилище, "Файл загружен в документ при загрузке из Excel: " + ТекущаяДата(), ); Сообщить(" Файл документа загружен в файл: " + СсылкаНаФайл); КонецЕсли; КонецЕсли;
Свежие комментарии