Ошибка открытия прикрепленного файла в нетиповом документе расширения

1. MrGreenDragonZz 25.01.23 12:39 Сейчас в теме
В нетиповом документе возникает ошибка при открытии присоединенного файла:

Ошибка при выполнении файловой операции '/e1cib/data/Справочник.вд_МаршрутныйЛистПрисоединенныеФайлы.Файл?ref=8de052540011b0bb11ed9c88ae2c0639'. Значение данного типа невозможно преобразовать для передачи как файл. (Неопределено)
{ВнешниеДоработки Справочник.вд_МаршрутныйЛистПрисоединенныеФайлы.Форма.ФормаЭлемента.Форма(29)}: ПолучитьФайл(СсылкаНаФайлВИБ, Объект.ИмяФайла);

по причине:
Ошибка при выполнении файловой операции '/e1cib/data/Справочник.вд_МаршрутныйЛистПрисоединенныеФайлы.Файл?ref=8de052540011b0bb11ed9c88ae2c0639'. Значение данного типа невозможно преобразовать для передачи как файл. (Неопределено)

При этом загрузка происходит без ошибок. Файлы хранятся в томах в сетевой папке. В чём может быть проблема? Часть фалов нормально открывается, а часть выдаёт такие ошибки.

Модуль формы документа:

&НаКлиенте
Процедура ДокументЗаявка(Команда)
	П = Новый Структура;
	П.Вставить("Основание", Объект.Ссылка);
	П.Вставить("ВидДокумента", "Договор-заявка");
	ОткрытьФорму("Справочник.вд_МаршрутныйЛистПрисоединенныеФайлы.Форма.ФормаЭлемента", П);
КонецПроцедуры

Модуль формы справочника присоедененных файлов:

&НаКлиенте
Процедура Загрузить(Команда)
	АдресВХранилище = "";
	ВыбранноеИмяФайла = "";
	Если ПоместитьФайл(АдресВХранилище, , ВыбранноеИмяФайла, , УникальныйИдентификатор) Тогда
		Файл = Новый Файл(ВыбранноеИмяФайла);
		Имя = Файл.ИмяБезРасширения + " (МЛ-" + НомерДокумента(Объект.ВладелецФайла) + ")" + Файл.Расширение;
		СсылкаНаФайлВоВременномХранилище = АдресВХранилище;
		Если Не ЗначениеЗаполнено(Объект.Наименование) Тогда
			Объект.Наименование = Файл.Имя;
		КонецЕсли;
		Модифицированность = Истина; 
		Объект.ИмяФайла = Имя;
	КонецЕсли;               
КонецПроцедуры

&НаСервере
Функция НомерДокумента(Ссылка)
	ОбъектМЛ = Объект.ВладелецФайла.ПолучитьОбъект();
	Возврат ОбъектМЛ.Номер; 
КонецФункции

&НаКлиенте
Процедура Сохранить(Команда)
	Если Объект.ИмяФайла = "" Тогда
		Предупреждение("Нет сохраненных файлов");
	Иначе
		СсылкаНаФайлВИБ = ПолучитьНавигационнуюСсылку(Объект.Ссылка, "Файл");
		ПолучитьФайл(СсылкаНаФайлВИБ, Объект.ИмяФайла);
		//НачатьПолучениеФайлаССервера(СсылкаНаФайлВИБ, Объект.ИмяФайла);
	КонецЕсли;        
КонецПроцедуры

&НаКлиенте
Процедура ПриОткрытии(Отказ)
	Имя = Объект.ИмяФайла; 
	Если ЗначениеЗаполнено(Параметры.Основание) Тогда 
		Объект.ВладелецФайла = Параметры.Основание
	Иначе
		Элементы.ВладелецФайла.ТолькоПросмотр = Ложь;
	КонецЕсли;
	Если ЗначениеЗаполнено(Параметры.ВидДокумента) Тогда 
		Объект.Наименование = Параметры.ВидДокумента
	Иначе
		Элементы.Наименование.ТолькоПросмотр = Ложь;
	КонецЕсли;
КонецПроцедуры

&НаСервере
Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
	// Получить файл из хранилища и поместить его в объект.
	Если ЭтоАдресВременногоХранилища(СсылкаНаФайлВоВременномХранилище) Тогда
		ДвоичныеДанные = ПолучитьИзВременногоХранилища(СсылкаНаФайлВоВременномХранилище);
		ТекущийОбъект.Файл = Новый ХранилищеЗначения(ДвоичныеДанные, Новый СжатиеДанных(9));
		ТекущийОбъект.ИмяФайла = Имя;       
	КонецЕсли;       
КонецПроцедуры

&НаСервере
Процедура ПриЗаписиНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
	//Удалить файл из временного хранилища
	Если ЭтоАдресВременногоХранилища(СсылкаНаФайлВоВременномХранилище) Тогда
		УдалитьИзВременногоХранилища(СсылкаНаФайлВоВременномХранилище);
	КонецЕсли;
КонецПроцедуры
Показать
По теме из базы знаний
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
Оставьте свое сообщение

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