Печать файлов (картинок) из 1с 77 программно #247112


#0 by neetro
Собственно суть такая, есть необходимость печатать файлы картинок (сертификаты к продукции), пути прописаны в подчиненном справочнике. Как программно (по кнопке печать сертификатов) из накладной отправлять на печать файли из, скажем, списка значений (с путями)? Какие есть соображения?
#1 by Ёпрст2
Имхо, использовать внешние приложения (графич. редакторы).... ЗЫ: В каком формате картинки ?
#2 by Vint Kras
зачем ?
#3 by dk
+ КомандаСистемы(....) --- Хотя сам буду скоро делать думаю либо через Word, либо через Таблицу, т.к. нужно будет печатать по несколько картинок на лист + двухсторонняя печать :(
#4 by quest
infranview, word
#5 by Ёпрст2
Всё храню в *.pdf  и распечатываю с помощью командной строки самого ридера ... ЗЫ: если нужно несколько файлов печнуть, объединяю их в один, и его печатаю..
#6 by quest
а с двух сторон можно? У принтера есть дуплексер
#7 by Ёпрст2
А почему нет ?
#8 by Ёпрст2
+7 делаешь 2 принтера на одно устройство, один простой, другой с включенным дуплексом и печатаешь..
#9 by quest
А поподробнее можно? Или ссылку...
#10 by Ёпрст2
Подробнее про что ?  ...
#11 by quest
сорьки, стормозил. Уже все получилось
#12 by neetro
Да схему по подробнее можно, то есть кидаешь все картинки по ссылкам, скажем в ворд(а его как внешнее приложение цепляешь), а потом этот док печатаешь, так? а то была попытка сделать это с помощью КомандаСистемы, так ниче кроме текста распечатать не получилось (принтер JetDirect)
#13 by Ёпрст2
Для *pdf, например, так: вместо последнего "" можешь указать путь к принтёру и порт...
#14 by neetro
Ёпрст2 Он создает новый файл, а мне надо чтобы он открывал сушествующие *.jpg, где посмотреть инфу по ключам запуска, к примеру, того же фотошопа? /p это что? (значение этого ключа) Порт при нтера говоришь, вот у меня jetDirect принтер, подключен как локальный с созданем нового порта TCP/IP, порт такой в системе IP_192.168.1.133, его и писать?
#15 by neetro
Да и еще, кто может написать примерный текст, как это через word сделать? Ворд = СоздатьОбъект("Application.Word"), а дальше? То есть бывает такое что накладная из 100 позиций состоит, на каждую позицию от 3 до 5 сопроводительных документов, надо все упорядоченно выводить на принтер (сетевой)...как оптимально сделать?
#16 by smaharbA
СоздатьОбъект("InternetExplorer.Application"); но и с вордом не сложно...
#17 by Ёпрст2
Я тебе написал как напечатать *.pdf ... для *.jpg используй другой софт, со своими ключами запуска..
#18 by neetro
smaharbA, а примерно текст можно? :) Ёпрст2, понял спасибо!
#19 by neetro
Ёпрст2, но он все равно создает новый файл с именем, которое в преременной ИмяФайла, а не открывает существующий..
#20 by Ёпрст2
Полный текст строки запуска показывай.
#21 by neetro
Ёпрст2, а все понял, сорри :) ...+КаталогПользователя.... Но, на принтер не правит :(
#22 by maksik
дык эта, с помощью таблицы можна как раз похожая задача была давно уже сканировали сертификаты в jpeg в отдельную папку и цепляли их из 1с, в которой была таблица-шаблон (их несколько было, в зависимости от того, что печатали)
#23 by VasilyKushnir
Тебе правильно намекнули - через таблицу. Хочешь - скину, свою обработку. Все сертификаты у меня в Bmp формате черно-белые - меньше размер чем у jpg и зархивированны зипом. В папке сертификатов подпапка - код товара, номер архива  - код серии. Плюс регистр выданных сертификатов. При печати сертификатов из расходной вывождится ТЗ с перечнем всех серий из документа, те, серии серттификаты на которые раннее не выдавались данному покупателю, помечены псисой - печатать. Затем пробегаю по всем отмеченным и загоняю в таблицу.
#24 by VasilyKushnir
Да в каждом архиве м.б. несколько файлов: собственно сертификат, паспорт и т.п.
#25 by neetro
VasilyKushnir, было бы неплохо :) про таблицы и  сам думал...
#26 by Ёпрст2
Имхо, не делай так никогда, очень тормозной метод ...если файла много - забодаешься распечатывать...
#27 by neetro
Ёпрст2, да файла много, ну а с использованием ЗапустиьПриложение думаешь быстрее будет? Как я писал, на принтер не шлет (по порту)
#28 by smaharbA
Можно и без временного файла... Можно и все сразу файлы закинуть, но если преемлемо использование Ворд, то все будет не быстро, а очень быстро...
#29 by smaharbA
+ ИЕ (и иже с ним) один из первейших инструментариев адинеснега
#30 by neetro
smaharbA, спасибо... Ворд приемлем, то есть с вордом быстрее буит? А кто мне скажет,где мне взять инфу по методам Application.Word Excel InternetExplorer  и т.д.? а то ИЕ.ReadyState мне мало о чем говорит (сорри за ламство)
#31 by neetro
печать это ИЕ.ExecWB(6,2) ?!
#32 by smaharbA
Да, но там обязательно пауза после комманды...
#33 by neetro
smaharbA Так, уже кое что получилось :) но если ты говоришь что с вордом самое быстрое, а мне именно это и надо, повторю, в среднем 100 позиций в накладной, а у каждой позици от 3-х до 5и сертификатов, то мне нада синтаксис обращения с Application.Word, есть где взять?
#34 by neetro
блин, почему по 4 раза поститься?!??!?!
#35 by smaharbA
в справке ворда, кстати объект зовется Word.Application Тебе потребуется Shapes, а лучче даже InlineShapes
#36 by Истина
Акуеть!!! Пачка бумаги на одну накладную!!!
#37 by neetro
Да бумаги много уходит :) smaharbA, what is Shapes (InlineShapes)?
#38 by smaharbA
Это объекты ворда, почитай справку, могу пример дать попозже
#39 by maksik
это как сделать (у меня проблем вроде не было на тогдашнем "серваке" пеньке 2.4 ГГЦ в скульной версии 1с, причем сканы лежали все на том же серваке, никто на скорость не жаловался). к сожалению с этим клиентом давно не работаю, так что исходников нету, а так схему объяснил
#40 by Ёпрст2
#41 by neetro
smaharbA, пример было бы неплохо :)
#42 by neetro
maksik Ну да схема ясна тенкс, буду пробовать разные варианты :) Ёпрст2 спасиба!
#43 by neetro
Только в справке ИЕ не нашел даже метод ИЕ.ExecWB(6,2) :(
#44 by smaharbA
В ворде все можешь найти, и даже методы почти всех объектов системы... В редакторе басика , какие объекты надо - добавляешь на форму и ctrl+F2
#45 by neetro
smaharbA Ну пример то мне ждать?!
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С