|
Отучить запоминать последний принтер, как? | ☑ | ||
---|---|---|---|---|
0
Connect
16.11.12
✎
10:42
|
Привет всем! Возможно ли сделать что бы 1с-ка ВСЕГДА использовала принтер, установленный в системе по умолчанию, если явно(ТабДокумент.ИмяПринтера) не был указан другой? А то она после указания другого - запоминает его, а другой принтер нужно использовать только под одним пользователем и при определенном условии. Да, в диалоге печати можно обратно выбрать дефолтовый, но это не подходит.
А то не хочется перелопачивать конфу если ... тогда принетр1 иначе принтер2... Или может быть можно отследить нажатие кнопки "Печть" в Вин-диалоге печати и после этого вернуть дефолтовый принтер? Платформа 8.2(не УФ) |
|||
1
Connect
16.11.12
✎
10:48
|
Неужели нет способа отучить это запоминание принтера? Поиском в гугле и на этом форуме пользовался - ничего путного... Может свежие идеи у кого есть
|
|||
2
Connect
16.11.12
✎
10:55
|
А такой вариант?
ТабДок.ИмяПринтера = Принтер2; ТабДок.Показать(); - здесь SLEEP (показываем) - показали, надеемся что на печать отправили... ТабДок.ИмяПринтера = Дефолтовый. но ведь слип заморозит систему, а потом печать сразу полетит на дефолт, хотя нужно было на принтер2 ТабДок.Напечатать() не подходит, нужно именно Показать() |
|||
3
Cube
16.11.12
✎
10:57
|
Перед печатью запомнить принтер, что установлен, отправить на нужный, вернуть тот, что был перед печатью. Не?
|
|||
4
Connect
16.11.12
✎
11:00
|
(3) Не. Я же говорю, нужно не отправить, а показать. Юзер сам нажимает кнопку печать.
ТабДок.ИмяПринтера = п1 ТабДок.Показать() ТабДок.ИмяПринтера = дефолт в диалоге печати УЖЕ будет стоять дефолт |
|||
5
Cube
16.11.12
✎
11:02
|
(4) Так ты показывай не ТабличныйДокумент, а форму, в которой выведешь свой ТабличныйДокумент. При закрытии формы делй чо хошь...
|
|||
6
Connect
16.11.12
✎
11:04
|
(5) А как ТабличныйДокумент впихнуть в форму? В какую? Это для каждого документа придется делать? Юзер зашел в этот документ, напечатал на принтер2, документ закрыл. Открывает другой - а у нас принтер2 так и остался, а нужен дефолт уже...
|
|||
7
Cube
16.11.12
✎
11:07
|
(6) Все стандартные печатные формы формируются в форме, а не просто в табличном документе.
|
|||
8
Фауст
16.11.12
✎
11:08
|
Попробуй в процедуре печати найти строчку
ТабличныйДокумент.ИмяПараметровПечати = "что то"; и закомментируй ее |
|||
9
Connect
16.11.12
✎
11:09
|
(7) Да не стандартные это, конфа измененная.
ТабДок = Новый ТабличныйДокумент ... ТабДок.Показать() (8) нету ее - сразу говорю. (7) А хотя это идея! Сваять формочку специальную и передавать в нее табдок, а ПриЗакрытии() формы возвращать дефолтовый принтер! |
|||
10
Cube
16.11.12
✎
11:11
|
(9) "Сваять формочку" - она уже есть, ты просто не искал...
|
|||
11
Cube
16.11.12
✎
11:11
|
+(10) Хотя, в твоем случае, нужно всё-равно свою рисовать.
|
|||
12
Connect
16.11.12
✎
11:46
|
Блин... сделал уже, типовая ОФ ПечатьДокументов, ПриЗакрытии ставим дефолт, все хорошо, потом дошло. Последний принтер запоминается только ПОСЛЕ отправки на печать! Без этого никакие возвраты к дефолтовому принтеру не помогут... засада блин!
Придется разбираться каким образом запоминается принтер, надеюсь в реестре, и пытаться повлиять на эту запись после печати. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |