Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.10.29;
Скачать: [xml.tar.bz2];

Вниз

QickReport   Найти похожие ветки 

 
Дмитрий_Б ©   (2006-10-13 17:39) [0]

В отчете есть DetailBand и несколько SubDetail, которые последовательно связаны друг с другом.
Необходимо чтобы определенная группа Subdetail-ов печаталась без разрывов на две страницы. Связал их последовательно с помощью свойства LinkBand. Последний SubDetail связан со своим ChildBand, и вот этот то последний SubDetail переносится на другую страницу.
Как сделать так чтобы в такой ситуации вся группа Subdetail-ов печаталась со следующей страницы ?


 
Johnmen ©   (2006-10-14 22:00) [1]

В нужном обработчике события вызвать NewPage.


 
Германн ©   (2006-10-15 01:36) [2]


> Johnmen ©   (14.10.06 22:00) [1]
>
> В нужном обработчике события вызвать NewPage.
>

Хуже другое. При этом (в общем случае) нужно как-то учитывать размер страницы, а у меня в QR это ни разу не получилось нормально.
P.S. Может в этом виноват я. :-)


 
Johnmen ©   (2006-10-15 02:37) [3]


> Германн ©   (15.10.06 01:36) [2]


Не понял... Размер страницы определяется в Page.


 
Германн ©   (2006-10-15 02:54) [4]


> Johnmen ©   (15.10.06 02:37) [3]
>
>
> > Германн ©   (15.10.06 01:36) [2]
>
>
> Не понял... Размер страницы определяется в Page.
>

Не понял, так забудь мой пост. Но у авторв QR исторически всегда были проблемы с печатью на принтер. И он сам в этом признавался. А уж история с PageCount!


 
Johnmen ©   (2006-10-15 03:02) [5]


> Германн ©   (15.10.06 02:54) [4]
> Но у авторв QR исторически всегда были проблемы с печатью на принтер. И он сам в этом признавался.


Что за проблемы? И где почитать?


>А уж история с PageCount!


Что за история? Просто любопытно...:)


 
Германн ©   (2006-10-15 03:27) [6]


> Что за история? Просто любопытно...:)
>

История такая. В первых версиях QR PageCount отсутствовало, имхо. Потом в каких-то версиях оно появилось. Я даже успел им попользоваться. Но потом, в очередном релизе в ридми (или в других документах релиза, не помню точно, давно это было) появилось сообщение, что есть проблемы с некоторыми принтерами. И после этого было заявлено, что PageCount нельзя использовать в TQRSysDetail.
Далее, чем Д4 я QR не пользовал. Может его автор и нашёл решение, но вспоминая посты АП, не верю.


 
Anatoly Podgoretsky ©   (2006-10-15 03:37) [7]

Твоя история похоже на сказку, на самом деле использовать можно, но только надо понимать, как работают генераторы отчетов, до окончания полной генерации отчета, невозможно определить количество страниц в отчете - это требует использования двух проходов и обеспечения повторяемости данных.


 
Германн ©   (2006-10-15 03:54) [8]


> Anatoly Podgoretsky ©   (15.10.06 03:37) [7]
>
> Твоя история похоже на сказку, на самом деле использовать
> можно, но только надо понимать, как работают генераторы
> отчетов, до окончания полной генерации отчета, невозможно
> определить количество страниц в отчете - это требует использования
> двух проходов и обеспечения повторяемости данных.
>

Может быть и похожа. Но готов поспорить на всё что угодно! Когда-то PageCount в QR работало без "явного двойного" вызова функции генерации отчётов!

Как работают генераторы отчётов - я понимаю. (Конечно только общие принципы. Но тут именно о них и речь идёт). Но, имхо, когда-то, на каком-то этапе своей деятельности, автор QR предпринял подобную попытку. И она у него получилась, но потом он столкнулся с тем, что это частное решение.


 
Anatoly Podgoretsky ©   (2006-10-15 15:04) [9]

Может тебе показалось или была версия, которая делала два прохода не спрашивая об этом пользователя. А это всегда чревать для баз данных.

Поскольку такое невозможно по определению для любого генератора отчетов. Даже Эксель и Ворд делают два прохода, но в фоне. У Ворда это заметно по статус строке.

Исключения составляют простейшие генераторы отчетов, без титульных строк (или учитывают их при фиксированом размере), с заголовками на каждой строке и с одинаковой высотой всех строк и заранее известным количеством данных, которое не меняется до конца отчета, как понимаешь для баз это не гарантируется.

И если такое и было в QR, то правильно сделали, что отказались, поскольку это глупость была. Те кому нужен счетчик страниц еще до печати отчета делают два прохода, QR это поддерживает на уровне АПИ. Возможно тебе хочется, что бы это делалось автоматически, но тогда учти выше приведеные доводы и напиши маленькую обертку из десятка строк.


 
Германн ©   (2006-10-17 02:41) [10]


> Anatoly Podgoretsky ©   (15.10.06 15:04) [9]
>
> Может тебе показалось или была версия, которая делала два
> прохода не спрашивая об этом пользователя.



> Германн ©   (15.10.06 03:54) [8]
> Но готов поспорить на всё что угодно! Когда-то PageCount
> в QR работало без "явного двойного" вызова функции генерации
> отчётов!


Кажется я был не прав в своих высказываниях :-(
Раскопал тут в архивах версию некоей своей программы, написанную в Д1 с QR-1.0xd. И в ней я использовал два прохода для получения PageCount.


 
Anatoly Podgoretsky ©   (2006-10-17 09:48) [11]

Вот это похоже на правду. А если увидишь программу где это делается в один проход, знай тебе вешают лапшу на уши.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.10.29;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.039 c
15-1160535420
SerJaNT
2006-10-11 06:57
2006.10.29
Настройка aDSL-модема "aDSL-200"


15-1158748854
Колдун
2006-09-20 14:40
2006.10.29
Нумерованный список в RichEdit


2-1160969868
Tab
2006-10-16 07:37
2006.10.29
как перейти в следующую ячейку в StringGrid


2-1160626264
apl
2006-10-12 08:11
2006.10.29
Про даты


2-1159633389
crasher
2006-09-30 20:23
2006.10.29
Системная оболочка





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский