Задумка такая - в обработку добавляю макет - Activ document с wold'овским файлом, на форму добавляю кнопку, при нажатии на которую хочу открывать этот файл из макета. Подскажите, что написать в процедуре(форма управляемая)?
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
НЗ=РегистрыСведений.ФайлыЗаданий.СоздатьНаборЗаписей();
НЗ.Отбор.Задание.Установить(Объект.Ссылка);
НЗ.Прочитать();
Если НЗ.Количество() Тогда
Данные=НЗ[0].Файл.Получить();
РасширениеФайла=НЗ[0].Расширение;
Иначе
Данные=Неопределено;
Расширение="";
КонецЕсли;
Если Данные<>Неопределено Тогда
АдресФайла=ПоместитьВоВременноеХранилище(Данные, УникальныйИдентификатор);
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура ПриЗаписиНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
Если НЕ ЭтоАдресВременногоХранилища(АдресФайла) Тогда
Возврат;
КонецЕсли;
НЗ=РегистрыСведений.ФайлыЗаданий.СоздатьНаборЗаписей();
НЗ.Отбор.Задание.Установить(Объект.Ссылка);
Запись=НЗ.Добавить();
//к этому моменту ссылка не должна быть пустой
Запись.Задание=Объект.Ссылка;
Запись.Файл=Новый ХранилищеЗначения(ПолучитьИзВременногоХранилища(АдресФайла));
Запись.Расширение=РасширениеФайла;
НЗ.Записать();
КонецПроцедуры
&НаКлиенте
Процедура Показать(Команда)
#Если ВебКлиент Тогда
Предупреждение("Не доделано, не додумано");
#Иначе
Если НЕ ЭтоАдресВременногоХранилища(АдресФайла) Тогда
Возврат;
КонецЕсли;
ВременноеИмя=ПолучитьИмяВременногоФайла(РасширениеФайла);
ПолучитьФайл(АдресФайла, ВременноеИмя, Ложь);
ЗапуститьПриложение(ВременноеИмя);
#КонецЕсли
КонецПроцедуры