Печать из серверного процесса

1. skela 3 12.08.21 13:30 Сейчас в теме
На клиенте формируется печатная форма, затем она передаётся на сервер и должна распечататься, подскажите как можно распечатать на сервере?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. FatPanzer 12.08.21 13:33 Сейчас в теме
С помощью команд серверной операционной системы и только на тот принтер, который на сервере установлен как принтер по умолчанию.
3. AnryMc 849 12.08.21 13:51 Сейчас в теме
(2)
который на сервере установлен как принтер по умолчанию.


Если "спросить у клиента" ...

ТабДокумент = Новый ТабличныйДокумент;
    ТЗПринтеры=Новый ТаблицаЗначений;
    ТЗПринтеры.Колонки.Добавить("ИмяПринтера");
    принтеры =  Новый COMОбъект ("WScript.Network");
    prn =  принтеры.EnumPrinterConnections();
    i = 0;
    Пока i < prn.Count()-1 Цикл
        НовыйПринтер=ТЗПринтеры.Добавить();
        НовыйПринтер.ИмяПринтера=prn.Item(i+1);
        i = i + 2;
    КонецЦикла;

    Строка=ТЗПринтеры.ВыбратьСтроку("Выберите принтер");
    ТабДокумент.ИмяПринтера=Строка.ИмяПринтера;
//Формируем Табдок

    ТабДокумент.АвтоМасштаб=1;
    ТабДокумент.Напечатать();
Показать
4. skela 3 12.08.21 13:59 Сейчас в теме
(3)

ТабДокумент.Напечатать();

Это же на клиенте, а мне нужно на сервере
5. tolyan_ekb 105 12.08.21 14:00 Сейчас в теме
(4) сформируй ТабДок на сервере в верни на клиент
6. skela 3 12.08.21 14:09 Сейчас в теме
(2) в папке "C:\Windows\System32\Printing_Admin_Scripts\ru-RU" есть скрипты для рабы с принтером, можно через них как-нибудь отправить на печать или как сформировать командную строку для печати ?
8. skela 3 12.08.21 15:01 Сейчас в теме
как распечатать на сетевом принтере через объект в PowerShell?
9. RustamZz 12.08.21 15:24 Сейчас в теме
(8) Get-Content -Path ИмяФайла | Out-Printer
Только файл должен быть в формате, который понимает принтер. Проще всего в txt, его точно все принтера понимают.
10. skela 3 12.08.21 15:39 Сейчас в теме
(9)
Get-Content -Path ИмяФайла | Out-Printer
спасибо, нужно распечатать mxl или xls
11. RustamZz 12.08.21 15:43 Сейчас в теме
(10) Увы нет mxl надо печатать из 1С, xls - из Excel. Принтер про такие форматы файлов не в курсе.
12. skela 3 12.08.21 15:51 Сейчас в теме
(11)а если сохранить в xls и распечатать через объект Excel?
13. RustamZz 12.08.21 15:52 Сейчас в теме
15. starik-2005 3077 12.08.21 16:44 Сейчас в теме
(12) сохрани в PDF и не мучайся.
14. oleg-x 22 12.08.21 16:01 Сейчас в теме
Тоже с этим столкнулись, но пришлось отказаться от идеи печати на сервере, так как изученные на тот момент способы, не гарантировали надежность печати, по различным причинам.
Как вариант, если есть такая возможность, сделайте регистр сведений "очередь печати" и пишите туда все документы, которые надо распечатать. И повесьте обработчик ожидания, который раз в минуту допустим будет опрашивать регистр и печатать.
У себя решили через внешнее событие: компонента генерирует внешнее событие и формируется задание на печать по параметрам.
16. starik-2005 3077 12.08.21 16:45 Сейчас в теме
(14) Мы сделали куда проще: на сервере через ПакетОтображаемыхДокументов создается PDF, который выгружается в расшаренный каталог пяти линукс-серверов, которые по cron'у отправляют этот PDF на печать. Принтеры в линухе сейчас устанавливаются ой как запросто, обычно даже автоматически.
17. oleg-x 22 12.08.21 17:17 Сейчас в теме
(16) У нас все на win. Были варианты компоненты, ворд. Но компоненты сторонние и если что не так, то все встанет. Ворд проблемный при печати, если выходит за границы печати, задает вопрос, отключение вопросов не помогает.
С PDF, не пробовали, сейчас может что то новенькое появилось или не нашли, но еще 5 лет назад отказались от PDF не срослось с ним, остановились на картинках, которые помещаются в табличный документ и печатаем, как обычный табличный документ.
18. starik-2005 3077 12.08.21 20:29 Сейчас в теме
(17)
но еще 5 лет назад отказались от PDF
А мы всю систему перепилили как раз под PDF лет этак семь назад - развернули пять дебианов на виртуалках, а там CUPS - его яблочные гении писали, так что работает как часы, а не как даже не знаю и что у мелкомягких.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот