8.х Макет для отправки e-mail -ом

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Melanto, 23 июл 2008.

  1. TopicStarter Overlay
    Melanto
    Offline

    Melanto Опытный в 1С

    Регистрация:
    28 ноя 2007
    Сообщения:
    204
    Симпатии:
    0
    Баллы:
    26
    Доброго всем дня!

    Задача стоит такая: для экономии времени и бумаги формировать счета на оплату в 1сУТ и рассылать их по емеле. Есть макет счета, есть макет счета с наложенныит печатями и подписями.
    А вопрос такой: не хочется отправлять в mxl, хочется в каком нить неразборном виде, а то ведь там картинка печати и прочее, да и не факт, что принимающая сторона 1с имеет.

    Вот чтобы такое придумать. а?...

    Поможите, кто чем может, куда копать-то?

    Ручками можно это сделать так: посылаю на печать на PDFCreator, получаю собственно, что надо, и вот эту ПДФину уже можно слать.

    А как бы все это сделать без участия человеческого фактора?
  2. lazy
    Offline

    lazy Модераторы Команда форума Модератор

    Регистрация:
    1 сен 2007
    Сообщения:
    2.127
    Симпатии:
    4
    Баллы:
    29
    На практике никогда не делала, но думаю, что самым эффективным методом было бы создание PDF документов - и картинки поддерживает, и крайне распространенный формат - Acrobat reader поставляется почти со всем железом, да и скачать его можно. Т.е. если в фирме получателе есть хоть один соображающий в компах человек, то проблем не будет.

    Насчет того, как сделать - нужно поискать. Например вот коммерческое приложение
    http://www.pdftransformer.ru/about-product/?param=59818 предлагающее создавать PDFки из любых приложений - в виде принтера.
    Или вот
    http://www.businessonline.ru/profits/pdfcreator.html или вот http://www.osinka.ru/Sewing/Books/pdf/print.html Но думаю, что если порыться, то можно найти и другие аналогичные программы.

    Долго отвечал. Без человека - это нужно эксперементировать с
    Код:
    ТабДок.Напечатать()
    
  3. TopicStarter Overlay
    Melanto
    Offline

    Melanto Опытный в 1С

    Регистрация:
    28 ноя 2007
    Сообщения:
    204
    Симпатии:
    0
    Баллы:
    26
    Спасибо, посмотрю все что предлагаете.
    Можно еще вопрос по-поводу: ТабДок.ИмяПринтера - это как?
    В синтаксе - тип строка и больше ничего. Не приходилось работать с этой штукой?
    Строка - путь?
    Возможно, если в качестве этого самого принтера указать PDFCreator или Microsoft Office Document Imaging... Вот это-то у меня и не получается...
  4. lazy
    Offline

    lazy Модераторы Команда форума Модератор

    Регистрация:
    1 сен 2007
    Сообщения:
    2.127
    Симпатии:
    4
    Баллы:
    29
    К сожалению не имею доступа к локальному принтеру, но такой код
    Код:
    Макет = ПолучитьОбщийМакет("Аккредитив");
    Область = Макет.ПолучитьОбласть("ЗаголовокТаблицы");
    
    ТабДок = Новый ТабличныйДокумент;
    ТабДок.Присоединить(Область);
    ТабДок.ИмяПринтера = "\\server\hp LaserJet 1320 PCL 6";
    ТабДОк.Напечатать(Истина);
    
    
    Выводит на печать на удаленный принтер. Думаю, что на машине пользователя будет просто "hp LaserJet 1320 PCL 6".
  5. TopicStarter Overlay
    Melanto
    Offline

    Melanto Опытный в 1С

    Регистрация:
    28 ноя 2007
    Сообщения:
    204
    Симпатии:
    0
    Баллы:
    26
    Да, вызвать таким образом получилось. Спасибо.
    Имя принтера, оказывается, должно совпадать с тем, что указано в Printers and Faxes, можно даже его копировать.

    Буду теперь думать дольше... (вот это опечаточка!) и дальше...
  6. TopicStarter Overlay
    Melanto
    Offline

    Melanto Опытный в 1С

    Регистрация:
    28 ноя 2007
    Сообщения:
    204
    Симпатии:
    0
    Баллы:
    26
    Ох, лучшее - враг хорошего.
    Не хочу больше на печать на PDFCreator посылать, хочу им по OLE-управлять.....

    Хочу, даже создать СОМ могу, а вот с чем никак не могу разобраться - это с синтаксисом PDF.
    Код:
    MyPDF =Новый COMОбъект("PDFCreator.clsPDFCreator");
    MyPDF.cDefaultprinter="PDFCreator";	
    
    MyPDF.cStart();
    
    
    - вот это вроде работает...
    а что дальше? строки вида
    Код:
    MyPDF.cPrintFile ("C:\My\Table.mxl");
    
    не работают никак
    да и такие тоже
    Код:
    MyPDF.cOptions("UseAutosaveDirectory",1);
    
    Все что нашлось по PDFCreator-у - в лучшем случае под VB, там все работает, а в 1с - ни в какую...

    Как все-таки управлять свойствами PDF-а и как туда послать что-то, кроме тестовой страницы?

Поделиться этой страницей