Имя: Пароль:
1C
1С v8
Не работает сохранение файла
0 LisaAlisa
 
06.06.17
08:22
Код

&НаСервере
Процедура СохранитьНаСервере(ПутьКФайлу)

    МойОбъект=РеквизитФормыВЗначение("Объект");
    Макет = МойОбъект.ПолучитьМакет("ФайлНорм");
    
    ТабДок = Новый ТабличныйДокумент;    
    ОбластьШапка = Макет.ПолучитьОбласть("Шапка");
    ТабДок.Вывести(ОбластьШапка);    
    ОбластьСтрока = Макет.ПолучитьОбласть("Строка");    
    
    Для каждого Строка из ТЧСконвертированныеДанные Цикл
        ОбластьСтрока.Параметры.СкладскойКомплекс = Строка.СкладскойКомплекс;
        ...
        ТабДок.Вывести(ОбластьСтрока);
    КонецЦикла;
    
    ИмяФайла = "Файл_"+Объект.Подразделение+".xlsx";    
    ФайлXLS = Новый Файл(ПутьКФайлу +"\"+ ИмяФайла);
    Если ФайлXLS.Существует() Тогда                    
        УдалитьФайлы(ИмяФайла);
    КонецЕсли;    
    
    ТабДок.Записать(ФайлXLS.ПолноеИмя,"XLSX");
    
КонецПроцедуры


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

    СохранитьНаСервере(ПутьКФайлу);
    
КонецПроцедуры

Ошибка: файл не сохраняется. В отладчике почему-то
ФайлXLS.Имя = sfile
ФайлXLS.ПолноеИмя = sfile://sfile://C:\\ФайлНорм_РЦ "Домодедово".xlsx

что не так?
1 Fram
 
06.06.17
08:33
Наверно потому что нам надо было показать метод СохранитьНаСервере, а не команду Сохранить
2 LisaAlisa
 
06.06.17
08:39
Ошибку поняла. В имени файла не должно быть кавычек
ИмяФайла = ПутьКФайлу +"\"+ "ФайлНорм_"+СтрЗаменить(Объект.Подразделение,"""","")+".xlsx";
Закон Брукера: Даже маленькая практика стоит большой теории.