Имя: Пароль:
1C
 
И снова двусторонняя печать
0 Ivan093
 
12.10.10
10:57
Добрый день!

Дамы и господа "алкоголики", а так же все кто сталкивался с двусторонней печатью документов, знаю, что баян, но нужна помощь. Необходимо печатать табличный документ на одной стороне листа и сканированный документ на другой. Что сделал я:
1. формирую табдокиз макета 1С, разделителя страницы и картинки.
2. перед печатью этого табдока перевожу принтер в двусторонний режим, отправляю на печать, перевожу принтер обратно в обычный режим.
А вот тут проблема: принтер переводится в нужный режим, но у 1С есть такое свойство, что она запоминает опции печати и в итоге печатает в обычном режиме, хотя если зайти в свойства принтера -- там стоит двусторонняя печать.
Как это победить? Кто как печатает такие документы?
1 H A D G E H O G s
 
12.10.10
11:01
К опциям печати не относится свойство "Двусторонняя печать"
2 H A D G E H O G s
 
12.10.10
11:03
Я у себя в скором времени реализую РС
"Принтеры"
к которому привяжу печать пакета документов.

И пусть админ прописывает 2 вирт принтера в системе на 1 физический.
1 принтер - двусторонний,
2 принтер - осносторонний.
3 H A D G E H O G s
 
12.10.10
11:03
как то так
4 Ivan093
 
12.10.10
11:08
Да? А как тогда объяснить вот что, сделал тестовую обработку:
1. печатаю две страницы в обычном режиме
2. перевожу в 2-режим, ставлю Предупреждение, смотрю свойства принтера -- все ок 2-режим
3. Печатаю через Напечатать() -- печать идет в обычном режиме, т.е. 1С игнорирует настройки принтера.
4. Если потом послать на печать интерактивно этот документ -- то все ок.
Вывод: 1С видимо перед печатью всего табдока запоминает режим и печатает потом с ним, ну так мне кажется.

А с 2 вирт принтерами будет проблема синхронизации очереди. Это тоже вариант, да, но тут тоже есть подводные камни...
5 H A D G E H O G s
 
12.10.10
11:09
. перевожу в 2-режим, ставлю Предупреждение, смотрю свойства принтера -- все ок 2-режим

Как смотришь?
6 Ivan093
 
12.10.10
11:10
(5) через свойства принтера, кнопка Настройка печати
7 H A D G E H O G s
 
12.10.10
11:13
(6) Ну так понятно.
8 H A D G E H O G s
 
12.10.10
11:13
1С ка то печатает на дефолтный принтер с его дефолтными установками.
9 Ivan093
 
12.10.10
11:22
У меня этот принтер и есть дефолтный...
По поводу синхронизации двух вирт принтеров подумал вот что: в принципе уже набросал active-x, где можно получать количество заданий в пуле принтера, т.е. печатаем на 1 вирт принтер, ждем пока там не останется заданий, печатаем на второй принтер и т.д.
10 Ivan093
 
12.10.10
11:40
Ап! Неужели никто не печатает справки А/Б на двух сторонах?! Это же требование законодательства!
11 H A D G E H O G s
 
12.10.10
11:43
(9) Не могу подолзти мыслью до проблемы синхронизации.
Что там не так?
12 Ivan093
 
12.10.10
12:03
(11) У двух виртуальных принтеров -- две очереди, а физически очередь у драйвера принтера одна. И тут будет нарушаться порядок печати, т.е. одно задание может обработаться быстрее и влезть "без очереди".
13 H A D G E H O G s
 
12.10.10
12:04
(12) Счаст
14 Ivan093
 
12.10.10
12:04
Сейчас попробовал с двумя принтерами и проверкой на наличие заданий в пуле -- опять та же долбанная 1С вмешивается в печать и посылает на принтер, у которого в свойствах стоит двусторонняя печать, со своими настройками "по умолчанию" в одностороннем режиме... Как это побороть...
15 H A D G E H O G s
 
12.10.10
12:05
Свойство "Печатать прямо на принтер"
16 H A D G E H O G s
 
12.10.10
12:06
(14) Еще раз.
У 1С НЕТ настроойки "Двухсторонняя песчать".
Это - настройка ПРИНТЕРА и только его
17 H A D G E H O G s
 
12.10.10
12:09
1С отправляет печатать на принтер по умолчанию.
Если он - двусторонен - и печать двухсторонняя.

НО.
В рамках сеанса 1С можно настроить принтер как надо (только для 1С).
Тогда печать будет односторонняя.

1С отправляет печатать на принтер по умолчанию, если у ТабДока не задано свойство ИмяПринтера.
18 H A D G E H O G s
 
12.10.10
12:11
И спр. "Принтеры" все разруливается замечательно.

Мы делали отд. базу для розничника для печати пакета сопроводит. документов, в которой хранились версионир. скан-копии.
19 Ivan093
 
12.10.10
12:11
Я понимаю, что это настройка принтера, однако если интерактивно нажать Файл-Печать, то настройки по кнопке Настройка можно поменять для текущего сеанса, что 1С и делает видимо. Т.е. глобально у принтера стоит двусторонняя печать, а 1С выставляет одностороннюю печать. Как на это повлиять можно?
Печатаю через ТабДок.Напечатать(РежимИспользованияДиалогаПечати.НеИспользовать), т.е. напряму на принтер. Что я делаю не так?
20 H A D G E H O G s
 
12.10.10
12:12
(19)
<<Т.е. глобально у принтера стоит двусторонняя печать, а 1С выставляет одностороннюю печать. Как на это повлиять можно? >>

Никак. Из 1С - а программно - никак, только интерактивно.
21 H A D G E H O G s
 
12.10.10
12:13
(19)

<Печатаю через ТабДок.Напечатать(РежимИспользованияДиалогаПечати.НеИспользовать), т.е. напряму на принтер. Что я делаю не так?>

Если вы про Свойство "Печатать прямо на принтер"
то это - настройка принтера.
Это значит, что принтер не вернет управление в программу, пока все не напечатает, тоесть ТабДок.Напечатать() будет выполняться синхронно с печатью.
22 Ivan093
 
12.10.10
12:18
Перезапустил 1С -- стало вроде работать как надо. Значит на время сеанса 1С запомнила мой двусторонний принтер как односторонний. В общем остановлюсь, наверное, на схеме с двумя виртуальными принтерами.
23 H A D G E H O G s
 
12.10.10
12:20
(22)
ага, я говорил

НО.
В рамках сеанса 1С можно настроить принтер как надо (только для 1С).
Тогда печать будет односторонняя.
24 Ivan093
 
12.10.10
12:24
Спасибо за помощь.
AdBlock убивает бесплатный контент. 1Сергей