Имя: Пароль:
1C
1С v8
Сохранение в файл внешней печатной формы
0 lirt82
 
22.04.19
10:05
Есть внешняя печатная форма, как сделать чтоб после вывода макета на экран открывалось окно диалога сохранения файла? обычные формы
т.е. в меню печатных форм документа выбрали нашу внешнюю печатную форму вышел макет и сразу же открылось окно сохранения файла (далее детали уже, сразу в этом окне должно имя файла быть сформировано и формат сохранения).
1 runoff_runoff
 
22.04.19
10:09
ДиалогВыбораФайла, а потом ТабличныйДокумент.Записать()
2 lirt82
 
22.04.19
10:12
(1) где этот код писать? в модуле объекта внешней печатной формы или в модуле объекта документа из которого вызывается печатная форма? и в каком событии...
3 lirt82
 
22.04.19
10:14
проблема в том что отладчиком не могу поймать событие после вывода макета на экран.
4 runoff_runoff
 
22.04.19
10:23
в функции Печать модуля объекта внешней обработки поставить Возврат Неопределено
а перед ним (возвратом) вставить (1)
5 lirt82
 
22.04.19
10:44
(4) не работает

Функция Печать() Экспорт
    
    ПрисвоениеПеременных();
    
    Режим = РежимДиалогаВыбораФайла.Сохранение;
    ДиалогСохраненияФайла = Новый ДиалогВыбораФайла(Режим);
    //ДиалогСохраненияФайла.ПолноеИмяФайла = "Выгрузка_"+Формат(ПериодРегистрации,"ДФ=M_yy");
    Фильтр = "Текст(*.txt)|*.txt";                
    ДиалогСохраненияФайла.Фильтр = Фильтр;
    ДиалогСохраненияФайла.МножественныйВыбор = Ложь;
    ДиалогСохраненияФайла.Заголовок = "Выберите файл";
    
    //Возврат ПечатьЗ2();    
    
    Возврат Неопределено;
    
КонецФункции
6 mikecool
 
22.04.19
10:45
задать вопрос о сохранении до вывода на экран, запросить папку, сохранить при формировании макета
и это - зачем вообще показывать?
7 1Сергей
 
22.04.19
10:47
(5) а подумать?
8 lirt82
 
22.04.19
11:46
(7)         ОбластьМакета.Параметры.МОЛОтпустил = ДанныеМОЛОтпустил.Представление;
    КонецЕсли;    
    ТабДокумент.Вывести(ОбластьМакета);

    //Возврат ТабДокумент;

    Режим = РежимДиалогаВыбораФайла.Сохранение;
    ДиалогСохраненияФайла = Новый ДиалогВыбораФайла(Режим);
    
    Фильтр = "Текст(*.txt)|*.txt";                
    ДиалогСохраненияФайла.Фильтр = Фильтр;
    ДиалогСохраненияФайла.МножественныйВыбор = Ложь;
    ДиалогСохраненияФайла.Заголовок = "Выберите файл";
        
    Возврат Неопределено;
    
КонецФункции // ПечатьЗ2()
9 lirt82
 
22.04.19
11:47
(7) также не помогает
10 lirt82
 
22.04.19
12:27
все получилось (4) большое спасибо

    ТабДокумент.Вывести(ОбластьМакета);

    //Возврат ТабДокумент;

    ДиалогСохраненияФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Сохранение);
    ДиалогСохраненияФайла.ПолноеИмяФайла = Строка(Шапка.Контрагент) + "_" + Строка(формат(Шапка.ДатаДокумента, "ДФ=dd.MM.yyyy"));
    
    Фильтр = "Документ PDF (*.pdf)|*.pdf";                
    ДиалогСохраненияФайла.Фильтр = Фильтр;
    ДиалогСохраненияФайла.Заголовок = "Сохранить как";
    Если ДиалогСохраненияФайла.Выбрать() Тогда
        ПутьКФайлу = ДиалогСохраненияФайла.ПолноеИмяФайла;
        ТабДокумент.Записать(ДиалогСохраненияФайла.ПолноеИмяФайла, ТипФайлаТабличногоДокумента.PDF);
    КонецЕсли;
    
    Возврат Неопределено;
    
КонецФункции // ПечатьЗ2()
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.