Имя: Пароль:
1C
1С v8
Запуск прикрепленного файла
0 Sergio447
 
01.10.24
15:57
Доброго дня!
Пытаюсь запустить прикрепленный .docx файл из типового справочника файлы по кнопке из внешней обработки, но получаю что файл не найден. В чем может быть причина?

Вот код:

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

&НаСервере
Функция Команда1НаСервере()  
        
    Запрос = Новый Запрос;
    Запрос.Текст =
        "ВЫБРАТЬ
        |    Файлы.Ссылка КАК Ссылка,
        |    Файлы.Наименование КАК Наименование
        |ИЗ
        |    Справочник.Файлы КАК Файлы
        |ГДЕ
        |    Файлы.Наименование = ""ПЕЧАТЬ!""";
    
    РезультатЗапроса = Запрос.Выполнить().Выбрать();
    
    Пока РезультатЗапроса.Следующий() Цикл
         Возврат РезультатЗапроса.Наименование;
    КонецЦикла;
         
КонецФункции  


&НаСервере

Функция ОткрытьФайл()
    СпрФайл = Справочники.Файлы;
    ТекЭлем = СпрФайл.НайтиПоНаименованию("ПЕЧАТЬ!");
    ТекФайл = ТекЭлем.ФайлХранилище.Получить();
    Возврат ТекФайл;
КонецФункции
1 Волшебник
 
01.10.24
16:03
дурдом
2 Галахад
 
01.10.24
16:12
Погуглить: Передача файлов с сервера на клиент
3 DiMel_77
 
01.10.24
16:23
(0) Если используете типовой функционал БСП (Справочник "Файлы"), может тогда и программный интерфейс можно использовать?
Например: РаботаСФайламиКлиент.ОткрытьФайл()?
4 Sergio447
 
01.10.24
16:40
(3) спасибо, это помогло)
5 Волшебник
 
01.10.24
16:45
(4) А понимание пришло или тупо вызвали?
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.