Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» FastReport

Автор: ITralf909
Дата сообщения: 23.11.2009 11:44
Разбираюсь с возможностями FastReport, пока мучаю бесплатную версию+D7.
Возникли вопросы.

Как в FreeReport сделать зачеркивание текста в выводимом поле по условию что то типа

IF [qZapros."FIELD1"]<0 THEN Font.Style:=Font.Style+[fsOutstrike]

пока что я понял что разработчики такого не предусмотрели.

Реализовано ли это в текущей версии FR 4.7 (пример кода если не сложно). Будет ли зачеркивание сохраняться при зкспорте отчета в csv, rtf.
Автор: Tualan
Дата сообщения: 25.11.2009 14:31
Как в отчет можно вложить уже готовый отчет?
Автор: Roman Mejtes
Дата сообщения: 26.11.2009 14:03
добрый вечер и день всем )
хочу поделиться своими изыскание в работе с FastReport's, надеюсь это кому нибудь пригодиться (если же я повторю чью то тему, извините)

у меня возникла необходимость прикрутить fastreport к АД и я начал его колупать.
в данный момент Fast Report может работать с AD (у меня сейчас версия 1.2.75, старые версии работаю криво)

и так:
создаем подключение к АД, создаем новый источник данных
новое подключение выбираем: OLE DB
в строке запроса указывает строку подключения к LDAP каталогу:

Provider=ADSDSOObject;Data Source="Active Directory Provider"; (вот тут найдете о том, как её формировать: http://www.connectionstrings.com/active-directory)

жмём тест, если всё окей, жмем ОК )
и затем Вперёд, в строке запроса вводим строку запроса к LDAP каталогу
пример:
<LDAP://DC=DOMAIN,DC=RU>;(&(objectCategory=Person)(objectClass=User)(!(userAccountControl:1.2.840.113556.1.4.803:=2)));cn,memberof,distinguishedName;subtree
(в выше указанном примере мы получаем список всех пользователей, их группы, и LDAP путь к этим пользователям в домене domain.ru, естественно поля можно указать любые (которые есть в AD), при чём в запросе будут отсутствовать отключенные записи)
о строке формирования можно почитать тут: http://technet.microsoft.com/ru-ru/library/aa996205(EXCHG.65).aspx и тут http://msdn.microsoft.com/en-us/library/ms675768(VS.85).aspx) (не открывайте окно конструктора, это вызовет ошибку), жмем далее, параметры пропускайте снова далее, открывается окно определения полей данных, автоматически все они определяться как object (в целом можно ни чего не меня), но стоит все строки сделать String'ами, числа Int32, такие поля как member, memberof оставить объектами, так как они являются массивами (а иногда и сроками, если запись 1), обработать их лучше в какой либо процедуре через код.

вот и всё по сути, теперь у вас появится соединения с AD как с таблицей.

P.S. то есть по сути, всё работает как со стандартным ADODB подключением. удачи
Автор: salexn1
Дата сообщения: 27.11.2009 14:32
>ITralf909
начиная с 3 версии есть такая штука. Можно управлять шрифтами.
По экспорту... В CVS точно никак
В rtf - будет работать
Автор: snike555
Дата сообщения: 27.11.2009 22:39
Прошел слух что грядет FR5 и внем будет встроенные 2D штрихкоды, кто-нибудь более подробно про это может рассказать? что будет и когда?
Автор: Lana4ka
Дата сообщения: 01.12.2009 07:19
Использую FR.net, данные получаю из Mysql в DataSet. Запускаю приложение, формирую отчет...
вношу изменения в БД, изменения отображаются только после перезапуска приложения. Надо как-то переинициализировать DataSet? Или как... Помогите, пожалуйтса
Автор: snike555
Дата сообщения: 01.12.2009 08:14
Отображаются где? в отчете или в БД?
Автор: SIgor33
Дата сообщения: 01.12.2009 08:25
Lana4ka
попробуй после изменений сделать refresh или заново открой dataset
Автор: snike555
Дата сообщения: 01.12.2009 08:40
Если изменения делает в этом же датасете, то причина не в этом.
Автор: Lana4ka
Дата сообщения: 01.12.2009 09:20
[q][/q]
В отчете не хотят отображаться

Добавлено:
Попробовала на самой форме сделать табличку с данными из БД и кнопку Обновить повесила (this.pozdravlenieTableAdapter.Fill(this.portalDataSet.pozdravlenie);)
так вот после внесения изменений в БД и нажатия кнопки Обновить формирую отчет - все нормально показывает...
Где-то перед report.show() надо поставить обновление dataset. А вот отсутствие навыка общения с fastreport не позволяет это сделать)
Автор: snike555
Дата сообщения: 01.12.2009 09:27
А данные меняете в этом датасете для которого отчет?
Автор: Lana4ka
Дата сообщения: 01.12.2009 09:33
Данные меняю в БД, из нее потом DataSet их берет. Но берет, как я понимаю, один раз - при инициализации формы (ну еще приведенный выше метод для кнопки Обновить) и всеее
Автор: snike555
Дата сообщения: 01.12.2009 09:41
Так добавьте на кнопку печати или предпросмотра (что у вас там) refresh датасета
Автор: Lana4ka
Дата сообщения: 01.12.2009 10:37
не добавился refresh ну никак (((
помогло this.pozdravlenieTableAdapter.Fill(this.portalDataSet.pozdravlenie);
Автор: snike555
Дата сообщения: 01.12.2009 10:50
А язык я так понял не делфи да?
Автор: Lana4ka
Дата сообщения: 01.12.2009 11:39
Нет, не delphi, С# ... я же написала в первом сообщении, что fastreport.NET

Добавлено:
Спасибо за помощь
Автор: Kins
Дата сообщения: 09.12.2009 11:07
Приветствую многоопытный люд.
Подскажите новичку по FastReport-у плизз.
Создал отчет на двух старницах, на каждой странице есть бэнд masterData, связанный с одним и тем же набором данных.
При печати отчета печатаются сначала все PAGE1, затем все PAGE2
Как сделать чтоб печать шла в порядке: PAGE1, PAGE2 и так далее.

Заранее благодарю.
Автор: X11
Дата сообщения: 09.12.2009 11:24
Где-то в настройках отчета или даже в настройках принтера стоит группировка страниц
Автор: Kins
Дата сообщения: 09.12.2009 11:33
Настройки принтера обшарил - не нашел ничего
Описанный мной порядок страниц отображается при предпросмотре отчета.. в режиме разработки, и run-time тоже.
Автор: X11
Дата сообщения: 09.12.2009 11:58
Визуально это вот здесь


Где это в свойствах - х.з.
Автор: Kins
Дата сообщения: 09.12.2009 12:10
X11
Эта галка стоит по умолчанию..

Уточню - отчет сформировался, и в превью уже порядок идет все PAGE1, затем все PAGE2

Если отчет в превью формируется уже не так как надо... он и на печать также выводится..

Добавлено:
Разобрался
в этой статье описано, что ,как и почему...
http://reportingfor.com/ru/news.php?extend.27
Автор: snike555
Дата сообщения: 10.12.2009 02:19
Интересует компонент 2D штрихкодов для фаст репорта для Delphi 2010. Кто знает бесплатный компонент огромная просьба поделиться, у кого есть BarCode Studio 2010 от psoft или аналог просьба вывести линк в варез или личку.

П.С. Очень надо.
Автор: Kins
Дата сообщения: 11.12.2009 09:52
как напечатать двухстраничный отчет в нужном порядке -разобрался

"..Для организации цикла по абонентам на форму заказа положим еще один компонент типа TIBDataSet. В каждой итерации цикла для текущего абонента будем формировать комплект документов. Но при этом вместо метода TfrxReport.ShowReport используем метод TfrxReport.PrepareReport для добавления очередного комплекта в окно предварительного просмотра. По завершению цикла получим комплект документов уже разложенный по абонентам..."

а далее наткнулся вот на что: пока не закроешь приложение - в отчет страницы добавляются все время...
Как очистить предидущий отчет?
Автор: f3ka
Дата сообщения: 11.12.2009 10:04
Kins
ну скорее всего при начале новой генерации пакета документов надо делать TfrxReport.PrepareReport(True) для первой страницы (отчета), а последующим TfrxReport.PrepareReport(False)
Автор: Kins
Дата сообщения: 11.12.2009 13:42
f3ka
Да, именно так, спасибо разобрался.
а можно так: перед началом цикла frxReport1.PreviewPages.Clear;

еще вопрос:
Как связано свойство StoreInDFM и метод frxReport1.LoadFromFile ?
при StoreInDFM=true - вроде понятно, созданный отчет хранится в DFM файле формы.
а при StoreInDFM=false ? Отчет сохраняется в файле *.fr3, и перед ShowReport должен быть обязатально загружен?

использую frxReport1.LoadFromFile('test.fr3'), при StoreInDFM=false
ошибок не получаю, но и отчет test.fr3 не подгружается..
Открывается preview девственно чистый.. даже без пустых страниц...
Автор: jonikDk
Дата сообщения: 11.12.2009 13:46

Цитата:
использую frxReport1.LoadFromFile('test.fr3'), при StoreInDFM=false

прога не находит файл test.fr3.
Автор: X11
Дата сообщения: 11.12.2009 13:52
Надо же полный путь указывать
Автор: jonikDk
Дата сообщения: 11.12.2009 14:11

Цитата:
Надо же полный путь указывать

ну либо в проге установить папку по умолчанию папку в которой лежит этот файл
Автор: Kins
Дата сообщения: 11.12.2009 14:17
тут уж сложно проге не найти путь:
frxReport1.LoadFromFile(ExtractFilePath(Application.ExeName)+'test.fr3');

Да и ошибки не получаю...
Автор: jonikDk
Дата сообщения: 11.12.2009 14:19

Цитата:
'tes.fr3';

test.fr3 - внимательней надо быть

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859

Предыдущая тема: CBuilder и копирование файла


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.