Прикрепление файлов в документ из расширения с хранением на диске
Всем доброго дня, буду очень благодарен за помощь.
В чем суть проблемы: я создал новый тип документа в расширении конфигурации - мне нужно реализовать функцию прикрепления файлов к этому документу; однако для этой задачи механизмы БСП, к сожалению, не подходят по ряду причин. Более того, в целом настройка работы с данными предполагает хранение файлов в информационной базе, тогда как мне нужно реализовать хранение файлов, прикрепляемых конкретно к новому типу документа, где-нибудь отдельно на диске. И, если честно, я без понятия, как это сделать...
В чем суть проблемы: я создал новый тип документа в расширении конфигурации - мне нужно реализовать функцию прикрепления файлов к этому документу; однако для этой задачи механизмы БСП, к сожалению, не подходят по ряду причин. Более того, в целом настройка работы с данными предполагает хранение файлов в информационной базе, тогда как мне нужно реализовать хранение файлов, прикрепляемых конкретно к новому типу документа, где-нибудь отдельно на диске. И, если честно, я без понятия, как это сделать...
По теме из базы знаний
- Прикрепление внешних файлов к документам, справочникам и другим объектам для управляемого приложения (интерфейс такси)
- Разработка и сценарное тестирование с Vanessa-ADD. Практические примеры сценариев. Шаги встроенной библиотеки
- Электронно-цифровая подпись для внутреннего документооборота
- Добавление функционала прикрепленных файлов без изменения конфигурации
- Отправка в Telegram отчетов, печатных форм, присоединённых файлов и произвольных вложений. Загрузка получателей. Хранение истории отправок.
Найденные решения
(1) Всё подходит: есть у папок файлов предопределенное значение "Шаблоны". Используйте его и не парьтесь. Ссылки на присоединенные файлы храните в табличной части добавленного документа. Для добавления изображений я использую такой код:
При этом используется именно механизм БСП (как настроено хранение для базы, так и будут храниться файлы)
Если Не ЗначениеЗаполнено(Объект.Ссылка) Тогда
ПараметрыОповещения = Новый Структура("ИмяРеквизита", "ДанныеФайлаКартинки");
ОписаниеОповещения = Новый ОписаниеОповещения("ДобавлениеФайлаНеПрисоединенноЗавершение",
ЭтотОбъект,
ПараметрыОповещения);
ПараметрыЗагрузкиФайла = ФайловаяСистемаКлиент.ПараметрыЗагрузкиФайла();
ПараметрыЗагрузкиФайла.Диалог.Фильтр = НоменклатураКлиент.ФильтрФайловИзображений();
ФайловаяСистемаКлиент.ЗагрузитьФайл(ОписаниеОповещения, ПараметрыЗагрузкиФайла);
Иначе
ПараметрыОповещения = Новый Структура("ВыборИзображения, ВыборФайлаОписания", Истина, Ложь);
ОписаниеОповещения = Новый ОписаниеОповещения("ДобавлениеФайлаЗавершение",
ЭтотОбъект,
ПараметрыОповещения);
РаботаСФайламиКлиент.ДобавитьФайлы(ПредопределенноеЗначение("Справочник.ПапкиФайлов.Шаблоны"),
УникальныйИдентификатор,
НоменклатураКлиент.ФильтрФайловИзображений(),
,
ОписаниеОповещения);
КонецЕсли;
ПоказатьПри этом используется именно механизм БСП (как настроено хранение для базы, так и будут храниться файлы)
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) Всё подходит: есть у папок файлов предопределенное значение "Шаблоны". Используйте его и не парьтесь. Ссылки на присоединенные файлы храните в табличной части добавленного документа. Для добавления изображений я использую такой код:
При этом используется именно механизм БСП (как настроено хранение для базы, так и будут храниться файлы)
Если Не ЗначениеЗаполнено(Объект.Ссылка) Тогда
ПараметрыОповещения = Новый Структура("ИмяРеквизита", "ДанныеФайлаКартинки");
ОписаниеОповещения = Новый ОписаниеОповещения("ДобавлениеФайлаНеПрисоединенноЗавершение",
ЭтотОбъект,
ПараметрыОповещения);
ПараметрыЗагрузкиФайла = ФайловаяСистемаКлиент.ПараметрыЗагрузкиФайла();
ПараметрыЗагрузкиФайла.Диалог.Фильтр = НоменклатураКлиент.ФильтрФайловИзображений();
ФайловаяСистемаКлиент.ЗагрузитьФайл(ОписаниеОповещения, ПараметрыЗагрузкиФайла);
Иначе
ПараметрыОповещения = Новый Структура("ВыборИзображения, ВыборФайлаОписания", Истина, Ложь);
ОписаниеОповещения = Новый ОписаниеОповещения("ДобавлениеФайлаЗавершение",
ЭтотОбъект,
ПараметрыОповещения);
РаботаСФайламиКлиент.ДобавитьФайлы(ПредопределенноеЗначение("Справочник.ПапкиФайлов.Шаблоны"),
УникальныйИдентификатор,
НоменклатураКлиент.ФильтрФайловИзображений(),
,
ОписаниеОповещения);
КонецЕсли;
ПоказатьПри этом используется именно механизм БСП (как настроено хранение для базы, так и будут храниться файлы)
Хм, это весьма интересное решение, спасибо большое - не думал об этом. Для меня загвоздка лишь в том, что не хотелось бы базу и все ее бэкапы засорять еще больше, поэтому думал выгружать файлы куда-то в отдельное место на сервере...Проблема в целом лишь в том, что задача срочная, а я с подобной темой вообще ни разу не работал, вчера весь день изучал, как это вообще реализуется примерно.
Если позволите, хотел бы еще один вопрос задать, ибо я глупый новичок. Если честно, я так и не понял до конца, что должно быть в процедурах, название которых в качества параметра указывается в ОписаниеОповещения. Что в Вашем случае предполагают эти процедуры, что в них происходит?
Если позволите, хотел бы еще один вопрос задать, ибо я глупый новичок. Если честно, я так и не понял до конца, что должно быть в процедурах, название которых в качества параметра указывается в ОписаниеОповещения. Что в Вашем случае предполагают эти процедуры, что в них происходит?
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот