Прикрепление файлов в документ из расширения с хранением на диске

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


При этом используется именно механизм БСП (как настроено хранение для базы, так и будут храниться файлы)
vv2; user1839716; +2 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. nomad_irk 72 12.05.23 09:11 Сейчас в теме
(1)взять принцип из БСП и реализовать свой велосипед с блэкджеком и девушками низкой социальной ответственности
в чем сложности-то?
3. glek 119 12.05.23 11:39 Сейчас в теме
(1) Всё подходит: есть у папок файлов предопределенное значение "Шаблоны". Используйте его и не парьтесь. Ссылки на присоединенные файлы храните в табличной части добавленного документа. Для добавления изображений я использую такой код:
	Если Не ЗначениеЗаполнено(Объект.Ссылка) Тогда
		
		ПараметрыОповещения	= Новый Структура("ИмяРеквизита", "ДанныеФайлаКартинки");
		ОписаниеОповещения	= Новый ОписаниеОповещения("ДобавлениеФайлаНеПрисоединенноЗавершение",
														ЭтотОбъект,
														ПараметрыОповещения);
		
		ПараметрыЗагрузкиФайла = ФайловаяСистемаКлиент.ПараметрыЗагрузкиФайла();
		ПараметрыЗагрузкиФайла.Диалог.Фильтр = НоменклатураКлиент.ФильтрФайловИзображений();
		
		ФайловаяСистемаКлиент.ЗагрузитьФайл(ОписаниеОповещения, ПараметрыЗагрузкиФайла);
		
	Иначе
		
		ПараметрыОповещения	= Новый Структура("ВыборИзображения, ВыборФайлаОписания", Истина, Ложь);
		ОписаниеОповещения	= Новый ОписаниеОповещения("ДобавлениеФайлаЗавершение",
														ЭтотОбъект,
														ПараметрыОповещения);
		
		РаботаСФайламиКлиент.ДобавитьФайлы(ПредопределенноеЗначение("Справочник.ПапкиФайлов.Шаблоны"),
											УникальныйИдентификатор,
											НоменклатураКлиент.ФильтрФайловИзображений(),
											,
											ОписаниеОповещения);
		
	КонецЕсли;
Показать


При этом используется именно механизм БСП (как настроено хранение для базы, так и будут храниться файлы)
vv2; user1839716; +2 Ответить
4. user1839716 12.05.23 15:47 Сейчас в теме
Хм, это весьма интересное решение, спасибо большое - не думал об этом. Для меня загвоздка лишь в том, что не хотелось бы базу и все ее бэкапы засорять еще больше, поэтому думал выгружать файлы куда-то в отдельное место на сервере...Проблема в целом лишь в том, что задача срочная, а я с подобной темой вообще ни разу не работал, вчера весь день изучал, как это вообще реализуется примерно.
Если позволите, хотел бы еще один вопрос задать, ибо я глупый новичок. Если честно, я так и не понял до конца, что должно быть в процедурах, название которых в качества параметра указывается в ОписаниеОповещения. Что в Вашем случае предполагают эти процедуры, что в них происходит?
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот