|
Групповая печать документов | ☑ | ||
---|---|---|---|---|
0
Альбатрос
04.07.13
✎
12:20
|
Бухия 2.0
Есть необходимость печатать сразу 3-4 тыс. документов одного вида. Групповая обработка делает это оч. долго. Сделал вывод, что это из-за того, что она отправляет на печать каждый документ отдельно. Ускорит ли этот процесс, если все таб. документы я соберу в один и отправлю его на печать? Если ускорит, то как объединить таб. документы в один? в СП посмотрел, чот подходящего метода не обнаружил =( |
|||
1
vicof
04.07.13
✎
12:23
|
Выводишь таким же образом + ВывестиГоризонтальныйразделительСтраниц()
|
|||
2
Альбатрос
04.07.13
✎
12:23
|
оу, сори, вывести() как раз позволяет присоединять таб. документы =)
|
|||
3
smotritel
04.07.13
✎
12:23
|
(0) переходи на 3.0, она как раз печатает все "таб. документы в один"
|
|||
4
Kreont
04.07.13
✎
12:23
|
3-4 сразу не пойдет, принтер захлебнется такой задачей, разве что тестировать оптимальное значение (50, 200, и т.п.).
Напиши отдельную обработку и по очереди добавляй нужн.печ.формы в один таб.док, сразу будет еще быстрей от того что стандартная написана универсально и в 90% неоптимально для конкретной задачи. |
|||
5
vicof
04.07.13
✎
12:23
|
Но не факт, что ускорит. Возмет, сожрет оперативной памяти, и сдохнет.
|
|||
6
smotritel
04.07.13
✎
12:26
|
(0) тормоза не только из-за того что "отправляет на печать каждый документ отдельно" и "если все таб. документы я соберу в один" не сильно поможет.
тормоза ещё из-за того, что для каждого документа выполнятся запрос(ы). в 3.0 выполняется один запрос(ы) на все документы, потом из этого собирается "портянка", разделенная разделителем страниц - и уже она выводится на экран |
|||
7
Альбатрос
04.07.13
✎
12:26
|
(4) Ну хз. При групповой печати обращается к общему модулю УниверсальныеМеханизмы.НапечататьДокумент. В принципе, норм. функция вроде. Ее -то за основу и беру. У нас печатные станки, им кол-во в 3-4 тыс. доков - тьфу! =)
|
|||
8
Альбатрос
04.07.13
✎
12:27
|
(6) Хм... верно.
|
|||
9
Альбатрос
04.07.13
✎
12:29
|
(6) Но я все же попробую. Просто задержка перед печатаемыми доками ~ 2сек. А печ. форма формируется в разы быстрее
|
|||
10
acsent
04.07.13
✎
12:31
|
стандартные печ формы нельзя объеденить в один таб документ, только внешние
|
|||
11
Альбатрос
04.07.13
✎
12:40
|
(10) почему это? у объекта есть ф-ция печать, - она возвращает таб. документ
|
|||
12
Альбатрос
23.09.13
✎
06:13
|
Мужики, вообщем переделал из групповой обработки под задачу быстрой групповой печати.
Но получение печ. формы все равно происходит долго. Сделал замер производительности, затуп происходит на: Объект = Ссылка.ПолучитьОбъект(); из процедуры: Процедура ПечатьДокументов(МассивДокументов, НаПринтер) Если НаПринтер Тогда Ответ = Вопрос("При печати документов без предварительного просмотра будут использованы настройки, |используемые при последней печати. Продолжить?", РежимДиалогаВопрос.ДаНет); Если Ответ = КодВозвратаДиалога.Нет Тогда Возврат; КонецЕсли; КонецЕсли; Для каждого Ссылка Из МассивДокументов Цикл Объект = Ссылка.ПолучитьОбъект(); МетаданныеОбъекта = Объект.Метаданные(); Если НапечататьДокументПоУмолчаниюАльтернатива(Объект, , НаПринтер, Истина) Тогда Сообщить(Ссылка); КонецЕсли; ИндикаторОбработки = ИндикаторОбработки + 1; ОбработкаПрерыванияПользователя(); КонецЦикла; ТабДокумент.Показать(); Сообщить("-----------------------------------------------------------", СтатусСообщения.БезСтатуса); Сообщить("Выполнение обработки завершено", СтатусСообщения.БезСтатуса); КонецПроцедуры Процедура как в типовой, с моими маленькими изменениями. Так вот мужики, мой тупой вопрос: Как ускорить получение объекта? =) "Объект" затем используется в куче других типовых процедурах и функциях. База файловая. |
|||
13
Oleg_Kag
23.09.13
✎
07:12
|
в (6) написали же:
в 3.0 выполняется один запрос(ы) на все документы, потом из этого собирается "портянка", разделенная разделителем страниц - и уже она выводится на экран. Ускорить - сделать запрос ко всем документам сразу. Вы, обращаясь в цикле к каждому объекту и вызывая каждый раз процедуру печати, от своей проблемы ни сколько не ушли. |
|||
14
Альбатрос
23.09.13
✎
07:20
|
(13) Нуууу.. прибавка во времени все же есть, но недостаточна. Просто из-за природной лени неохота было свою обработку ваять.=) Похоже другого выхода нет. Надо пилить свое. Спасибо, тему можно закрывать.
|
|||
15
ИС-2
naïve
23.09.13
✎
07:41
|
(0) с 1C и без меня помогут.
Но как эти 4 тысячи листочков пламируешь преврать в документы? Для этого их надо отсортировать (пр ТОРГ12 + СФ + лабуда), простеплерировать, поставить подпись и печать. Сами занимаемся этой проблемой. Вот и думаю... Или будет - я напечатал, а там сами разбирайтесь? |
|||
16
Альбатрос
23.09.13
✎
07:57
|
(15) У меня такой задачи пока нет. В принципе, усорение печати нужно пока только для одного вида док-та. Но да, если уж делать, то делать сразу универсально. Может потом еще и продать удастся =)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |