View previous topic :: View next topic |
Author |
Message |
shura_k
Joined: 10 Oct 2003 Posts: 342 Location: Александр Occupation: Специалист Interests: Калининград
|
Posted: 19 Sep 2007 11:30 Post subject: Fastreport |
|
|
Как в fastreporte узнать какой лист печатается или какая копия?
Надо в зависимости от номера печатать разные слова типа - Оригинал, Копия 1, Копия 2 и т |
|
Back to top |
|
|
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 19 Sep 2007 13:00 Post subject: |
|
|
Вопрос по программированию отчетов. Тему переадресую |
|
Back to top |
|
|
dshlykov
Joined: 02 Aug 2005 Posts: 172 Location: Дмитрий Шлыков Occupation: Компания "БЭСТ" Interests: Москва
|
Posted: 19 Sep 2007 13:29 Post subject: Re: Fastreport |
|
|
Добрый день!
shura_k wrote: | Как в fastreporte узнать какой лист печатается или какая копия? | Могли бы Вы объяснить что такое оригинал и копия? Как они реализуются в Вашем отчете или о каком поставочном отчете идет речь? Номер страницы можно узнать с помощью конcтанты [PAGE#], она доступна в построителе выражений на кнопке "Константы".
shura_k wrote: | Надо в зависимости от номера печатать разные слова типа - Оригинал, Копия 1, Копия 2 и тп. | Если реализовать такую нумерацию с помощью страниц нельзя (т.е. оригинал и копия занимают более одной страницы), то можно воспользоватся переменными памя _________________ С уважением, Дмитрий Шлыков
Компания "БЭСТ" |
|
Back to top |
|
|
shura_k
Joined: 10 Oct 2003 Posts: 342 Location: Александр Occupation: Специалист Interests: Калининград
|
Posted: 19 Sep 2007 15:52 Post subject: |
|
|
А можно как-нибудь узнать кол-во копий который должен напечатать принтер? Т.е. то, что вводится в его окне.
И ещё. Как настроить печать комплекта документов. Можно как-то вызвать из одного отчета другой, просто на выполнение? Или надо собирать один большой отчет, который состоит из разных шаблонов. Во втором случае было бы удобно, если бы в fastreport был механизм обединения отчетов, просто тупо раскидывал по разныл листам импортированые шаблоны.
Может подскажите с какими стандартными параметрами вызывается Winreport когда вызов происходит из накладной. Т.е. что передавать в шапку, а что в строки. |
|
Back to top |
|
|
dshlykov
Joined: 02 Aug 2005 Posts: 172 Location: Дмитрий Шлыков Occupation: Компания "БЭСТ" Interests: Москва
|
Posted: 19 Sep 2007 16:59 Post subject: |
|
|
shura_k wrote: | А можно как-нибудь узнать кол-во копий который должен напечатать принтер? Т.е. то, что вводится в его окне. | Нельзя, так как число печатаемых документов задается уже после полного формирования отчета.
shura_k wrote: | И ещё. Как настроить печать комплекта документов. Можно как-то вызвать из одного отчета другой, просто на выполнение? Или надо собирать один большой отчет, который состоит из разных шаблонов. Во втором случае было бы удобно, если бы в fastreport был механизм обединения отчетов, просто тупо раскидывал по разныл листам импортированые шаблоны. | Такой возможности в FastReport нет. Необходимо формировать один большой отчет. Если (по моему у Вас именно такая ситуация) необходимо распечатать один документ несколько раз, то можно сделать в одном отчете без копирования.
shura_k wrote: | Может подскажите с какими стандартными параметрами вызывается Winreport когда вызов происходит из накладной. Т.е. что передавать в шапку, а что в строки. | Параметры функции WinReport подробно описаны в пункте меню "О программе - Программирование в среде БЭСТ-4+ - Функции БЭСТ-4+ - Win-печать - WinReport". В случае с накладной для отчета передается все реквизиты документа (дата, номер, контрагент), его строки, характеристики номенклатуры и партий. _________________ С уважением, Дмитрий Шлыков
Компания "БЭСТ" |
|
Back to top |
|
|
shura_k
Joined: 10 Oct 2003 Posts: 342 Location: Александр Occupation: Специалист Interests: Калининград
|
Posted: 19 Sep 2007 17:49 Post subject: |
|
|
Quote: | Если (по моему у Вас именно такая ситуация) необходимо распечатать один документ несколько раз, то можно сделать в одном отчете без копирования.
|
И как?
Quote: | Параметры функции WinReport подробно описаны в пункте меню |
я знаю параметры. интересны сами алиасы с которыми Бэст вызывает печать накладной. Чтобы не изобретать велосипед и заново не подготавливать данны |
|
Back to top |
|
|
dshlykov
Joined: 02 Aug 2005 Posts: 172 Location: Дмитрий Шлыков Occupation: Компания "БЭСТ" Interests: Москва
|
Posted: 20 Sep 2007 09:40 Post subject: |
|
|
Добрый день!
shura_k wrote: | Quote: | Если (по моему у Вас именно такая ситуация) необходимо распечатать один документ несколько раз, то можно сделать в одном отчете без копирования.
| И как? |
Данный вопрос решается следующим образом:
1. В отчете выкладываете секцию MasterData с виртуальным источником
2. На эту секцию выкладываете объект "Вложенный отчет"
3. У вас появится в отчете страница SubReport... на этой странице Вы и рисуете (или копируете) Ваш документ.
4. На карточке запроса задаете количество экземпляров документа, которое нужно распечатать:
Code: | MasterData.DataSource := <количество_копий> |
shura_k wrote: | интересны сами алиасы с которыми Бэст вызывает печать накладной. Чтобы не изобретать велосипед и заново не подготавливать данные. | Это зависит от того как Вы вызываете функцию. Что бы узнать это необходимо поставить в вашей программе функцию ALTD() запустить программу на выполнение с отладчиком и после перехода в отладчик нажеть клавишу F6. подробно описаны в пункте меню "О программе - Программирование в среде БЭСТ-4+ - Механизм HFileEval - Быстрый старт" _________________ С уважением, Дмитрий Шлыков
Компания "БЭСТ" |
|
Back to top |
|
|
shura_k
Joined: 10 Oct 2003 Posts: 342 Location: Александр Occupation: Специалист Interests: Калининград
|
Posted: 20 Sep 2007 12:12 Post subject: |
|
|
Quote: | Данный вопрос решается следующим образом:
1. В отчете выкладываете секцию MasterData с виртуальным источником
2. На эту секцию выкладываете объект "Вложенный отчет"
3. У вас появится в отчете страница SubReport... на этой странице Вы и рисуете (или копируете) Ваш документ.
|
Сделал как вы сказали. В результате на печать выходит только MasterData из подотчета, ни шапка, ни подвал ни чего другого не выходит. |
|
Back to top |
|
|
dshlykov
Joined: 02 Aug 2005 Posts: 172 Location: Дмитрий Шлыков Occupation: Компания "БЭСТ" Interests: Москва
|
Posted: 20 Sep 2007 14:44 Post subject: |
|
|
shura_k wrote: | Сделал как вы сказали. В результате на печать выходит только MasterData из подотчета, ни шапка, ни подвал ни чего другого не выходит. | Не могу сказать в чем может быть дело. Единственное ограничение, которое налогается на подотчет. там не может быть секций PageHeader, PageFooter, ReportTitle и ReportSummary. Если они есть их нужно заменить на другие. Вы моглибы прислать отчет на адрес: dshlykov@bestnet.ru _________________ С уважением, Дмитрий Шлыков
Компания "БЭСТ" |
|
Back to top |
|
|
shura_k
Joined: 10 Oct 2003 Posts: 342 Location: Александр Occupation: Специалист Interests: Калининград
|
Posted: 20 Sep 2007 15:09 Post subject: |
|
|
Как раз их и нет!
А как без них сделать нормальный печатный документ в подотчете - где должны быть и шапка и итоги, а не только данные. |
|
Back to top |
|
|
dshlykov
Joined: 02 Aug 2005 Posts: 172 Location: Дмитрий Шлыков Occupation: Компания "БЭСТ" Interests: Москва
|
Posted: 20 Sep 2007 15:46 Post subject: |
|
|
shura_k wrote: | А как без них сделать нормальный печатный документ в подотчете - где должны быть и шапка и итоги, а не только данные. | Для этого могут быть применены другие секции. Например: MasterHeader / MasterFooter. _________________ С уважением, Дмитрий Шлыков
Компания "БЭСТ" |
|
Back to top |
|
|
shura_k
Joined: 10 Oct 2003 Posts: 342 Location: Александр Occupation: Специалист Interests: Калининград
|
Posted: 21 Sep 2007 11:41 Post subject: |
|
|
Точно. Так получается более менее. Оказывается ещё есть SubReport Header и Footer - пробовал, может поможет, оказалось нет.
Есть ещё один вопрос. В варианте с Master Header и Footer отчет выводится подряд с разрывным переносом на новую страницу. Как сделать принудительный перенос, чтобы каждый раз Подотчет выводился на новый лист? |
|
Back to top |
|
|
shura_k
Joined: 10 Oct 2003 Posts: 342 Location: Александр Occupation: Специалист Interests: Калининград
|
Posted: 21 Sep 2007 12:48 Post subject: |
|
|
Вроде разобрался. Надо в основном отчете в Master Data поставить свойство "Формировать новую страницу"
Quote: | MasterData.DataSource := <количество_копий> |
Ну и это надо ставить как событие (OnBeforePrint)при Печате Основного отчета.
Ну а чтобы сделать отчет из разных подотчетов, надо на основную страницу положить несколько MasterData и в каждой вложить свой Подотчет. Поправьте, если я не пра |
|
Back to top |
|
|
dshlykov
Joined: 02 Aug 2005 Posts: 172 Location: Дмитрий Шлыков Occupation: Компания "БЭСТ" Interests: Москва
|
Posted: 24 Sep 2007 10:02 Post subject: |
|
|
Добрый день!
shura_k wrote: | Точно. Так получается более менее. Оказывается ещё есть SubReport Header и Footer - пробовал, может поможет, оказалось нет. | Таких секций нет. Может Вы имели в виду SubDetailHeader, SubDetailFooter; эти секции применяются для вывода данных из вложенных источников и отношения к SubReport не имеют.
shura_k wrote: | Вроде разобрался. Надо в основном отчете в Master Data поставить свойство "Формировать новую страницу" | Этот вопрос решается иммено так.
shura_k wrote: | Quote: | MasterData.DataSource := <количество_копий> |
Ну и это надо ставить как событие (OnBeforePrint)при Печате Основного отчета. | Можно сделать так, как написали Вы и так как написал я, т.е. на карточке запроса отчета.
shura_k wrote: | Ну а чтобы сделать отчет из разных подотчетов, надо на основную страницу положить несколько MasterData и в каждой вложить свой Подотчет. Поправьте, если я не прав. | Если у Вас несколько разных форм на один документ, то Вы можете это сделать. _________________ С уважением, Дмитрий Шлыков
Компания "БЭСТ" |
|
Back to top |
|
|
shura_k
Joined: 10 Oct 2003 Posts: 342 Location: Александр Occupation: Специалист Interests: Калининград
|
Posted: 24 Sep 2007 10:30 Post subject: |
|
|
Quote: | Можно сделать так, как написали Вы и так как написал я, т.е. на карточке запроса отчета.
|
Пробовал так - не получалось Поэтому и сделал по событию! |
|
Back to top |
|
|
|