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