|
v8: Необходимо печатать на одном принтере, но из разных лотков | ☑ | ||
---|---|---|---|---|
0
anton_minsk
28.05.12
✎
10:35
|
Добрый день!
Нужна помощь. Необходимо печатать ТТН и приложения к ТТН(на белых листах) на одном принтере, но из разных лотков. Пример: из лотка 1 печатаются ТТН, а из лотка 2 печатаютя протоколы и др., потом цикл повторяется. для снижения трудозатрат печать всех документов на водителя будет происходить нажатием одной кнопки. нужно сделать так, чтобы разные печатные формы шли на разные лотки принтера. суть в автоматической настройке выбора лотка, к каждой печатной форме. Подскажите как реализовать. |
|||
1
aleks-id
28.05.12
✎
10:44
|
копать дрова принтера на уровне WMI.
возможно поможет v8: Проверка на возможность двусторонней печати |
|||
2
Kreont
28.05.12
✎
10:47
|
Простой вариант решения: создать два принтера в виндовс: Лоток1 и Лоток2 (с настройками лотка по умолчанию), и сразу посылать печать на нужный.
|
|||
3
aleks-id
28.05.12
✎
10:48
|
(2) ... задание назвать "КОТЭ", сидеть и умиляться глядя что "КОТЭ отправлено в Лоток2"
|
|||
4
anton_minsk
28.05.12
✎
10:50
|
(1) не то...
|
|||
5
Kreont
28.05.12
✎
10:53
|
(4) Почему это не то, если хочется сделать красиво и правильно то только прочитав мс мсдн,
а для лентяев вариант (2) :) |
|||
8
kosts
28.05.12
✎
10:58
|
(0) Думаю можно сделать и средствами 1с.
У таблицы можно сохранять параметры + можно указать принтер конкретно + способ из (2). |
|||
9
anton_minsk
28.05.12
✎
11:04
|
(5) там же настройка двухсторонней печати
|
|||
10
anton_minsk
28.05.12
✎
11:25
|
может есть еще варианты?
|
|||
11
kosts
28.05.12
✎
12:17
|
(10) Что тут думать - тут прыгать надо...
|
|||
12
Eugene_life
28.05.12
✎
12:22
|
(10) Можно отправлять сперва на печать одни листы, потом подвешивать сообщение "Печать продолжится через Х минут. Положите в лоток нужную бумагу". Подразумевается, что пользователь, увидя это сообщение, переложит бумагу (переставит лоток, или вытащит бумагу из лотка 1, чтобы по умолчанию поехала печать из другого лотка). Условие "по одной кнопке" - будет соблюдено :)
|
|||
13
anton_minsk
28.05.12
✎
13:56
|
(12) хотелось бы, чтобы в выходной лоток выходил готовый пакет документов на клиента(ТТН + приложение + протокол), потом на следующего(ТТН + приложение + протокол) и т.д.
девочка только сколола их степлером и положила в стопку. |
|||
14
kosts
28.05.12
✎
13:57
|
(13) Что уже сделал в нужном направлении?
|
|||
15
Eugene_life
28.05.12
✎
13:59
|
(14) Сделал держатель для степлера из скотча. Прикрепил к принтеру. :-D
|
|||
16
anton_minsk
28.05.12
✎
14:30
|
(15) )))) можно задуматься
|
|||
17
anton_minsk
28.05.12
✎
14:34
|
(14) сам не программист, я проект-менеджер
хочу грамотно поставить задачу внедренцам, а они как только слышал что что-то нужно сделать нестандартное, говорят, что сделать это невозможно полазив в нете, понимаю, что данным вопросом люди интересовались уже давно, первую публикацию нашел аж от 2006 года |
|||
18
anton_minsk
28.05.12
✎
14:35
|
||||
19
kosts
28.05.12
✎
14:42
|
(17) В каждом документе поместить 1.
ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_37904229154070987945678769<т.е. строго уникальная строка>"; 2. Перед первой печатью, когда уже сформирована печатная форма, в параметрах страницы выбрать нужный принтер и лоток. 3. Если сработает, то жду зарплату внедренцев :-) ... |
|||
20
anton_minsk
28.05.12
✎
14:53
|
(19) еще интересно сколько они за это выставят к оплате )
|
|||
21
Eugene_life
28.05.12
✎
14:55
|
(20) 2 палки колбасы, не меньше ))) не на помойке же они себя нашли
|
|||
22
anton_minsk
28.05.12
✎
14:56
|
(20)думаю больше попросят )))
|
|||
23
RomaH
naïve
28.05.12
✎
15:20
|
(19) как ни странно, имя принтера в настройках печати не сохраняется - ставиться всегда последний используемый
|
|||
24
RomaH
naïve
28.05.12
✎
15:24
|
ок
пойдем от обратного - как сделали мы и для чего задача в регистратуре больницы с одного РМ печатать листки нетрудоспособности (бланки на гос. знаке) и талоны приема - просто печатные формы на А5 печать на разные принтеры пришли к выводу что надо перед печатью (выводом) задавать явно имя принтера (а так как для следующей печати имя принтера бертся последнее - то надо задавать имя принтера для всех печатаемых документов в данной конфигурации) соответсвенно ВК для определения списка принтеров на РМ, и регистр сведений типа: РМ + ПечатнаяФорма - имя принтера если имя принтера не определено - принтер по умолчанию |
|||
25
RomaH
naïve
28.05.12
✎
15:26
|
в общем вот из-за этого: "так как для следующей печати имя принтера бертся последнее - то надо задавать имя принтера для всех печатаемых документов в данной конфигурации" ну очень все не красиво и через анус получается
|
|||
26
kosts
28.05.12
✎
15:30
|
(23) Очень странно
|
|||
27
RomaH
naïve
28.05.12
✎
15:31
|
(26) а ты попробуй
переопредели принтер в одной ПФ, а потом напечатай другую |
|||
28
kosts
28.05.12
✎
15:32
|
(27) сегодня уже не смогу попробовать :-/
|
|||
29
anton_minsk
29.05.12
✎
09:59
|
(28) сегодня получится посмотреть?
|
|||
30
kosts
29.05.12
✎
12:43
|
(29) Поместил на форму 2 таблицы.
В предприятии для каждой таблицы в параметрах страницы задал свой принтер. Распечаталось на разных принтерах одной кнопкой. Указывал один и тот же принтер с разными лотками, запоминает. Но у меня такой принтер, что печатает всегда на лоток ручной печати если там лежит бумага. Так что пробуйте. Вариант стоит проверки на вашем оборудовании. |
|||
31
kosts
29.05.12
✎
12:53
|
(25) > в общем вот из-за этого: "так как для следующей печати имя принтера бертся последнее - то надо задавать имя принтера для всех печатаемых документов в данной конфигурации" ну очень все не красиво и через анус получается
Попробуй сразу после печати устанавливать имя принтера в Неопределено |
|||
32
RomaH
naïve
29.05.12
✎
12:55
|
(31) это как? ... как отловить момент печати?
|
|||
33
RomaH
naïve
29.05.12
✎
12:58
|
(30) ну не знаю
хм, щас поспробовал на ЗУП - вроде запоминает |
|||
34
RomaH
naïve
29.05.12
✎
13:01
|
а вот на самописке на тонком клиенте нет
ща толстый попробую |
|||
35
RomaH
naïve
29.05.12
✎
13:04
|
на толстом аналогично
либо я где-то накосячил с ключем параметров печати (хотя поля, маштаб и прочее запоминает) либо это управляемое приложение так отрабатывает |
|||
36
kosts
29.05.12
✎
13:07
|
(32) Ну я имею ввиду программно делать
ТабДок.ИмяПринтера = "фываыва"; ТабДок.Напечатать(); ТабДок.ИмяПринтера = неопределено; |
|||
37
RomaH
naïve
29.05.12
✎
13:07
|
т.е. (19) вполне себе работает если у (0) не управляемое приложение
а если управляемое - пишите в ошибки платформы - может исправят а может это мой косяк - что не запоминает принтер просьба подтвердить или опровергнуть |
|||
38
RomaH
naïve
29.05.12
✎
13:08
|
(36) а проверить вывод? - от принтера зависит маштабирование и прочее однако
|
|||
39
anton_minsk
29.05.12
✎
13:10
|
(37) спасибо за потраченное время, как только получу ответ, напишу
|
|||
40
kosts
29.05.12
✎
13:13
|
(38) ну, задавать имя сразу.
|
|||
41
RomaH
naïve
29.05.12
✎
13:14
|
хм, щас убрал свои дописки - все стало ОК
принтер запоминается толи я глючил, толи платформу обновили и заработало |
|||
42
Азат
29.05.12
✎
13:16
|
(24) ну ты ваще извращенчег... wsh для этого вполне достаточно было.. и принтер можно было дефолтовый менять и все
то есть схема такая была: |
|||
43
Азат
29.05.12
✎
13:16
|
+ (42)
1. устанавливаем дефолтовый 2. печатаем 1 страницу 3. меняем дефолтовый 4. печатаем следующую и тп |
|||
44
RomaH
naïve
29.05.12
✎
13:17
|
(43) ага - а какой ставить дефолтовым ты откуда знаешь - рабочих мест много и принтеры разные
|
|||
45
RomaH
naïve
29.05.12
✎
13:20
|
но реально я похоже попал с этой задачей именно на релиз платформы с багом - ибо (19) вполне достаточно
но у нас в тот момент времени не получилось - принтер не запоминался сейчас убрал присваимвание имени принтера принудительно - все ок Функция ПечатьКартыВыбывшего(МассивОбъектов,ОбъектыПечати) ТабличныйДокумент = Новый ТабличныйДокумент; ТабличныйДокумент.ИмяПараметровПечати = "КартаВыбывшегоИзСтационара_121356"; //ТабличныйДокумент.ИмяПринтера = УправлениеПечатью.ПолучитьИмяПринтераДляМакета("Документ.РегистрацияПациентаВСтационаре.ПФ_MXL_КартаВыбывшего"); МакетПечати = УправлениеПечатью.ПолучитьМакет("Документ.РегистрацияПациентаВСтационаре.ПФ_MXL_КартаВыбывшего"); |
|||
46
Азат
29.05.12
✎
13:22
|
(44) ну а как ты хочешь выбирать - куда чего печатать? сканишь сеть и печатаешь на первый попавшийся?
|
|||
47
RomaH
naïve
29.05.12
✎
13:24
|
(46)
ну так в (24) написано же РС РС заполняется на каждом рабочем месте по необходимости но задача не актуальна - все работает и так, похоже на 8.2.14 релизе была такая фича, сейчас 15 - все работает |
|||
48
RomaH
naïve
29.05.12
✎
13:27
|
(43) т.е. в чем извращенность то проявилась?
в том что не дефолтный принтер меняю, а имя принтера для ТД присваиваю? ... ну так батенька, это вы извращенец дефолтный принтер меняется для всего сеанса пользователя ведь? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |