Имя: Пароль:
1C
1C 7.7
v7: Печать PdfCreator
0 Лиза777
 
08.10.21
07:22
Мне нужно несколько файлов pdf отправить по почте. После печати на PdfCreator - почему-то открывается сформированный пдф в программе PDF Archeteсt 8, которая установилась в одном пакете с PdfCreator. И из-за этого не отправляется. В программе убрала галку "открывать файл после печати". В настройках принтера убрала галку типа того же. Не пойму как нужно сделать, чтобы программа не открывалась, а просто отправлялись файлы?
Код такой:
            ПутьКФайлу=("C:\рассылка\"+Имяфайла);
            Таб0 = СоздатьОбъект ("ТабличныйДокумент");
            Таб0.ЗагрузитьИзТаблицы(Таб);                        
            Таб0.ПараметрыПечати.ИмяПринтера = "PDFCreator";            
            Таб0.ПараметрыПечати.АвтоМасштаб = 1;
            Таб0.Напечатать(0);
            ФС.ПереименоватьФайл("C:\рассылка\protocol.pdf",ИмяФайла,1);            
            ФС.УдалитьФайл("C:\рассылка\protocol.pdf");
1 NorthWind
 
08.10.21
08:22
Ну что значит "поставилась". Кто вас заставлял его ставить? Надо читать, что пишет при установке, и снимать ненужные галки.
2 NorthWind
 
08.10.21
08:22
удалите архитект тогда, раз он мешается
3 NorthWind
 
08.10.21
08:36
раньше для отправки по почте из pdf creator'а я использовал утилитку blat - это такой smtp-клиент, который позволяет почту из командной строки слать. https://www.blat.net/. Криэйтор умеет запускать приложение с параметрами, соответственно он запускал этот blat и тот слал письмо. Но это было лет 10 назад. Сейчас, возможно, там встроенные функции отправки почты есть.
4 Лиза777
 
08.10.21
10:05
(2) ну да, сработало ))) спасибо вам!!

Только почему то  мой код файл переименовывает когда по второму разу проходит. Если один раз вызываю эту процедуру создаётся просто файл protocol.pdf (это имя я задала фиксировано в PdfCreator). Перед отправкой я его переименовываю в код контрагента. Вот почему то это переименование происходит только когда этот код второй раз исполняется. Что-то не понимаю почему.
5 Лиза777
 
08.10.21
10:05
(3) посмотрю. что это за зверь. Спасибо
6 Builder
 
08.10.21
10:41
Для клюшек удобно работать с BullzipPDF.
Вот так например
ПДФПринтер = СоздатьОбъект("Bullzip.PDFPrinterSettings");
посмотри примеры.
7 Лиза777
 
08.10.21
11:19
попадался он, ага. Ладно попробую с BullzipPDF
8 Builder
 
08.10.21
11:41
(7) А почту отправлять удобно через DialMail.
Ты через что отправляешь?
9 vova1122
 
08.10.21
12:10
Я для отправки почты формирую ПДФ через Йоксель
10 vova1122
 
08.10.21
12:11
ТабЭлемент=СоздатьОбъект("ТабличныйДокумент");
        ТабЭлемент.ЗагрузитьИзТаблицы(Таб);
        Имя="Сч"+Строка(НомерДок)+"_"+Формат(ДатаДок,"ДДДММГГ");
        Имя=СтрЗаменить(Имя,".","-");
        Имя=СтрЗаменить(Имя,"/","-");
        Имя=СтрЗаменить(Имя,"\","-");
        Имя=СтрЗаменить(Имя," ","");
        Имя=СтрЗаменить(Имя,"    ","");
        Каталог="D:\SendMail\";
        ИмяФайла=Каталог+Имя+".PDF";
        Если ФС.СуществуетФайл(ИмяФайла)=1 Тогда
            Ответ=Вопрос("Файл существует!
            |Переписать?","Да+Нет");
            Если Ответ="Нет" Тогда
                Возврат;
            КонецЕсли;
        КонецЕсли;        
        Конвертер = СоздатьОбъект ("Йоксель.ГрафическийКонвертер.PDF");
        Конвертер.ВысотаСтраницы = 16840;   //А4
        Конвертер.ШиринаСтраницы = 11907;   //А4
        Конвертер.КоличествоБитНаПиксел = 24;
        Конвертер.Документ = ТабЭлемент;
        Конвертер.ПолеСлева = 600;
        Конвертер.ПолеСверху = 600;
        Конвертер.ПолеСправа = 600;
        Конвертер.ПолеСнизу = 600;
        Данные = Конвертер.СтандартныеМетаданные;
        
        Конвертер.ЗаписатьВФайл (ИмяФайла);
11 Лиза777
 
08.10.21
12:53
(9) при таком способе у нас пустую страницу в конце вставляет
12 Злопчинский
 
08.10.21
13:14
(11) как печформа сформирована - так и всятавляет.
13 Злопчинский
 
08.10.21
13:15
14 Злопчинский
 
08.10.21
13:16
(10) а почему портрет? как автоматом для сформированной печфомы определить - портрет/ландшафт?
15 Лиза777
 
08.10.21
13:56
(12) не если вывожу печатную форму на просмотр в самом 1с:предприятие, то нормально, 1 страница. А в файл после преобразования в ПДФ добавляется пустая страница ((
16 vova1122
 
08.10.21
14:08
(14)  Мне это не нужно. У меня везде портрет
(15) наверное поля (и поэтому не влазит). Или в коде что-то лишнее добавлено
17 Злопчинский
 
08.10.21
14:37
(16) "Мне это не нужно."
незачет.
18 Злопчинский
 
08.10.21
14:40
Вот есть произвольная печатная форма. как определить - она для вывода в портрете или в ландшафте?
..
надо определить ширину печформы и потом сопоставить с высотой а4 в портрете.
как определить ширину печформы?
19 GrayS19
 
08.10.21
16:18
(6) Как вы работаете с BullzipPDF ? В бесплатной версии он вставляет свои красные строчки, а официально купить его по безналу на контору как-то не смогли.
20 Builder
 
08.10.21
16:34
(19) Пользуемся старыми бесплатными версиями, раньше были такие....
21 GrayS19
 
08.10.21
16:37
(20) какую версию искать ?
22 Builder
 
08.10.21
16:44
(21) У нас BullzipPDFPrinter_6_0_0_865
Может и более поздние были, но эта работает, но имхо только под Win7. Не тестил на 10-ке.
23 GrayS19
 
08.10.21
16:49
(22) спасибо, подойдёт. у нас Server 2003 :)
2 + 2 = 3.9999999999999999999999999999999...