Имя: Пароль:
1C
1С v8
ТабличныйДокумент.Напечатать() - не работает на сервере
0 Glavkomnn
 
16.10.19
16:15
Господа, на сервере программно создается табличный документ. Средствами сервера необходимо вывести его на печать. Клиента нет, все идет в фоновом задании в общем модуле

Необходимо добиться, чтобы сервер пустил его на принтер и напечатал

Сторонними сервисами?
Какое самое быстрое решение?
1 Temai
 
16.10.19
16:18
Да когда вы научитесь читать СП?
Забавно что вы удивляетесь что Напечатать() не работает на Сервере, хотя там и не должен...

ТабличныйДокумент (SpreadsheetDocument)
Напечатать (Print)
Синтаксис:
Напечатать(<ДиалогПечати>)
Параметры:
<ДиалогПечати> (необязательный)
Тип: РежимИспользованияДиалогаПечати.
Определяет необходимость показа диалога печати перед печатью.
Значение по умолчанию: НеИспользовать.
Описание:
Выводит табличный документ на печать.
Доступность:
Тонкий клиент, веб-клиент, мобильный клиент, толстый клиент, мобильное приложение(клиент).
2 Glavkomnn
 
16.10.19
16:19
(1) слушайте, я это все без вас прочитал. Вопрос о том, какие альтернативы ТабДок.напечатать() при наличии только фонового задания в общем модуле сервера. Если нет идей, проходите мимо
3 Glavkomnn
 
16.10.19
16:22
сразу скажу, что COM-соединение тоже недоступно на этом сервере, я так понимаю, запуск стороннего приложения. Читал идеи, что можно выложить файл в pdf в каталог печати какого-либо принтера. Насколько реальный выход из ситуации?
4 sitex
 
naïve
16.10.19
16:27
(3) Напишите тогда что за платформа ? ОС ? вводных данных маловато.
5 Temai
 
16.10.19
16:28
На мой взгляд самый простой вариант сохранять в файл, а потом например батником выводить файлы на печать. Либо как вы написали в (2) сразу в папку каталога печати принтера, но тут нужно чтобы принтер сам смотрел файлы и после печати их удалял что на мой взгляд сложнее сделать
6 Glavkomnn
 
16.10.19
16:30
(4) платформа 8.3.13.1690 конфигурация УТ 11.4.9 нетиповая, процедура печати вызывается в общем модуле ДатаМобайл, с галками "сервер" и "внешнее соединение"
7 Glavkomnn
 
16.10.19
16:31
(5) ну с удалением файлов мы можем организовать регламентным заданием со стороны того же 1с

Спасибо попробую подложить в каталог отпишусь что получилось
8 sitex
 
naïve
16.10.19
16:38
Если pdf то вот как пример
for %%i in (*.pdf) do (
"C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\AcroRd32.exe"  <тут параметры>
)
pause

Параметры /t <filename> <printername> <drivername> <portname>

Я просто не понял как ОС у ТС.
9 Glavkomnn
 
16.10.19
16:41
(8) Можем через ЗапуститьПриложение(..)

а мы можем из серверного модуля вызвать серверно-клиентский, наподобие?

УправлениеПечатьюКлиентСервер

передать туда табДок и напечатать там? По расшаренному пользователю серверу 1С принтеру
спрашиваю теоретически, недоступен конфигуратор проверить..
10 sitex
 
naïve
16.10.19
16:48
(9) Параметры /t <filename> говорит о том что файл должен быть в указанной папке.
11 sitex
 
naïve
16.10.19
16:50
(9) Вы можете хоть каждый раз генерировать этот байт файл в 1С сохранять его в месте с файлом записывать в нужную папку, Запускать этот бат и удалять все выше изложенное из папки. Все равно это все "костыльно" - но вполне должно работать.
12 Андроны едут
 
16.10.19
16:50
(0) В фоновое задание можно передать адрес временного хранилища из родительского сеанса, куда сохранить табличный документ, а затем в родительском сеансе его запустить на принтер.
13 fbear
 
17.10.19
09:10
2 (0) я через yoksel делал
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший