|
![]() |
#1 |
Участник
|
Я на эти грабли уже наступал. Почему Вы решили что проблема именно в спуллере принтера? Он что, как-то проверяет влезет в него пришедший пакет или нет еще ДО собственно попытки что-то там принять?
Судя по описанию, проблема именно в порядке отправки заданий на печать. Если у Вас процесс печати накладной и счета фактуры по одному и тому же заказу разнесены во времени, то не удивляйтесь, что между ними "втиснется" накладная от другого заказа. Принтер тут вообще не при чем! Это стандартная ситуация в многопользовательских приложениях. Вам надо сделать следующее: 1) Процесс печати накладной и счета фактуры должен быть организован одним пакетом без вмешательства пользователя. Под "пакетом" в данном случае я понимаю программную отправку на печать документов. Без открытия окон предварительного просмотра. Совсем грубо, нечто вроде PHP код:
Это НЕ проблема спуллера принтера - это проблема AXAPTA. |
|
|
За это сообщение автора поблагодарили: Pavel Pustovalov (1). |
![]() |
#2 |
Участник
|
2 Владимир Максимов:
про спуллер это нам наши айтишники сказали в коде же как раз примерно такая рализация как вы и описали (reportRunInvoice.run()), последовательный вывод на принтер докментов по заказу потом переход на другой заказ: примерно так: пользователя нажимает кнопку "Печать документов" в некой форме, далее происходит примерно следующее. Код: while select salesTable where salesTable.DeliveryDate == 01\08\2006 { SalesDocs.print(salesTable) } Идею вашу я понял, хотя как мне кажется у нас как раз и реализовано нечто подобное, попробую еще покопаться, может чего упустил. |
|
![]() |
#3 |
Участник
|
Цитата:
Сообщение от Владимир Максимов
Я на эти грабли уже наступал. Почему Вы решили что проблема именно в спуллере принтера? Он что, как-то проверяет влезет в него пришедший пакет или нет еще ДО собственно попытки что-то там принять?
Судя по описанию, проблема именно в порядке отправки заданий на печать. Если у Вас процесс печати накладной и счета фактуры по одному и тому же заказу разнесены во времени, то не удивляйтесь, что между ними "втиснется" накладная от другого заказа. Принтер тут вообще не при чем! Это стандартная ситуация в многопользовательских приложениях. Это НЕ проблема спуллера принтера - это проблема AXAPTA. Стакивался с этим, когда реализовывал печать сертификационных документов по накладным. Вначале сделал вывод каждого документа, как отдельное задание на печать - в результате печатались в совершенно произвольном порядке. Пришлось переделывать - все документы засовывал в одно задание.
__________________
Axapta v.3.0 sp5 kr2 |
|
![]() |
#4 |
Участник
|
Цитата:
Сообщение от AndyD
Не согласен - это как раз таки спулер.
Стакивался с этим, когда реализовывал печать сертификационных документов по накладным. Вначале сделал вывод каждого документа, как отдельное задание на печать - в результате печатались в совершенно произвольном порядке. Пришлось переделывать - все документы засовывал в одно задание. ![]() |
|
![]() |
#5 |
Участник
|
Цитата:
Сообщение от AndyD
Вначале сделал вывод каждого документа, как отдельное задание на печать - в результате печатались в совершенно произвольном порядке. Пришлось переделывать - все документы засовывал в одно задание.
|
|
![]() |
#6 |
Участник
|
Цитата:
Сообщение от Владимир Максимов
Это НЕ проблема спуллера принтера - это проблема AXAPTA.
Цитата:
Сообщение от AndyD
Не согласен - это как раз таки спулер.
Стакивался с этим, когда реализовывал печать сертификационных документов по накладным. Вначале сделал вывод каждого документа, как отдельное задание на печать - в результате печатались в совершенно произвольном порядке. Пришлось переделывать - все документы засовывал в одно задание. Цитата:
Сообщение от AndyD
Это делалось не в Axapta. Отсканированные сертификаты в виде рисунков выводились на печать с помощью WINAPI-функций
AndyD, хотелось бы мне знать: 1. Наблюдали ли Вы окно очереди принтера? И в окне документы помещались в очередь не в том порядке, в каком отсылались на печать?! То есть, если уж "виноват спулер", он именно должен был нарушить очередь - а в этом я сомневаюсь. Либо это был какой-то чересчур умный принтер, с собственной сортировкой? 2. Какой программой выводились на печать документы (всё-таки из Аксапты, но через WinAPI, или откуда-то ещё)? 3. Версия Windows? Сетевой или локальный принтер? При печати не вмешивались ли задания других пользователей? Дело в том, что Володя реально и долго занимался проблемой очереди на печать, как раз при выводе сертификатов из Аксапты, и я с его мнением согласен. Очередь на печать должна идти в порядке отсылки, если одинаковы права и приоритеты. |
|
![]() |
#7 |
злыдень
|
Цитата:
Сообщение от somebody
Дело в том, что Володя реально и долго занимался проблемой очереди на печать, как раз при выводе сертификатов из Аксапты, и я с его мнением согласен. Очередь на печать должна идти в порядке отсылки, если одинаковы права и приоритеты.
__________________
Ибо зло есть лучшая сила человека. "Человек должен становиться все лучше и злее" -- так учу я. /Ф. Ницше/ Последний раз редактировалось Recoilme; 04.09.2006 в 20:32. |
|
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|