Автоматическая печать на принтер в фоновом задании на сервере #775922


#0 by bvb
Необходимо решить следующую проблему : Автоматически печатать на определенный принтер накладные. Хочу решить данную проблему через фоновое задание крутящеся на сервере. проблема в следующем : 1. Сервер 1С установлен под учетной записью system. Фоновое задание запускается под ней. Под этой записью на сервере нет доступных принтеров. 2.Процедура напечатать недоступна в серверном варианте. Видимо нужно будет использовать xls pdf Задача типовая - не хочу изобретать велосипед
#1 by Либерал
регистр сведений "очередь печати" и клиентское приложение с обработчиком ожидания, запущеное на сервере
#2 by Garykom
Зачем? Когда все проще Да типовой велосипед, на сервере выгружаешь в PDF во временную папку, затем перемещаешь в каталог "входящих заданий на печать" Далее крутится на сервере скрипт/прога который мониторит каталог "входящих заданий", перемещает в каталог "исполняю сейчас" и после печати/ошибки печати распределяет по каталогам "выполнено" или "ошибки печати".
#3 by rozer76
фигасепроще ) так и  делал у себя - РС "История печати" по докам и печформам и допечатывает то чего нет там
#4 by bvb
В очереь печати помещаем фоновым заданием или при проведении. А клиентская 1С в сеансе пользователя сама печатает ?
#5 by Либерал
клиентская 1с запущена на сервере под юзером "робот" например, и печатает данные из очереди периодически через обработчик ожидания
#6 by Ластик
или через com стучаться на принтер с сервака и напрямки печатать, видел поделки в природе
#7 by Ластик
столкнулся при таком подходе с глюком что обработчик ожидания останавливается, пришлось писать следилку которая убивала зависшие сеансы и запускала снова клиентский, у тебя был только положительный опыт при таком подходе? Не налетал на такое?
#8 by Либерал
да вроде норм... нипомню, давно
#9 by Cyberhawk
Не нужно через обработчик ожидания, нужно в регл. задании запускать полноценный клиентский сеанс (через команду системы или запустить приложение). И даже в этом случае регл. задания могут умирать, пока из не пнешь. Т.е. еще одна следилка за регл. заданием, переключающая у него флажок использования
#10 by Либерал
ага, и чтоб очередные пять страниц распечатать (каждые полминуты, например) - полный цикл загрузить/выгрузить клиента?? будет ступор.
#11 by Ластик
В той задаче у меня доработка была, не я писал, обратились как раз с просьбой разобраться т.к. у них накапливалась куча открытых клиентских сеансов т.к. обработчик останавливался и все это добро висело дальше, а чтобы снова печать пустить новый клиентский запускался. Такой подход как ты предлагаешь тоже рассматривал, убрать весь код из модуля приложения, чтобы не отрабатывал при старте клиентского сеанса запущенного под нужды печати, но там проще оказалось следилку добавить в том случае, не стал рисковать т.к. доступа к той машине где это вертися - нет и отладить и что то поменять невозможно в процессе, а печать там шла тысячами в сутки и остановки (да и просто тормоза) недопустимы, только гневные письма получать )).
#12 by Ластик
Такое как ты предлагаешь кстати делал для отслеживания останавливающихся регзаданий )), батник который проверяет выполнялось / нет сканируя ЖР, и пинка регзаданию с переустановкой галок использования если не выполнялось.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

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