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

» FastReport

Автор: Frodo_Torbins
Дата сообщения: 27.04.2015 15:47
5) В ресурсах приложения поправить файл формы, если датасет настраивается не из кода
6) Кинуть в отчет какой нибудь из доступных датасетов (если в родном редакторе они есть), и переделать отчет на его использование
7) Написать встроенный в отчет скрипт, который перенастроит датасет и переоткроет его (не уверен, что так можно)
Автор: ptr73
Дата сообщения: 28.04.2015 06:28
если есть только exe и fr3, то эти варианты не помогут
а если есть исходники, то проще работать с ними
Автор: exteris
Дата сообщения: 28.04.2015 08:19
The_Immortal
Выложите файл отчета, если есть возможность. Глядишь чего и подскажется.
Автор: The_Immortal
Дата сообщения: 18.05.2015 21:29
Пишу в продолжение своей проблемы в надежде, что кто-нибудь откликнется.
В общем, я раздобыл исходники программы, но мне это не помогло.
Проблема на самом деле банальная (для тех, кто разбирается), но нужно вникнуть в суть.

Программа + Исходники.

К сожалению, если запустить отдельно отчет, то там ничего не будет видно, поэтому необходимо:

1. Установить программу (она легкая).
2. После установки скопировать прилагаемый файл Контрольный черновик.fr3 в директорию %SystemDrive%\Users\Public\Documents\DiplomFGOSVPO\Blanks\ (с заменой).
3. После запуска программы открыть существующий журнал - выбрать прилагаемый файл test.db.
4. Откроется главное окно, где надо выбрать: Настройки - Параметры - Настройка печатных макетов - выбрать "Контрольный черновик" - Редактор.
5. Откроется дизайнер отчета. Там есть Memo18:
Цитата:
Номер и серия документа о предыдущем образовании, год выдачи: [Student."Номер_документа_о_пред_обр"], [Student."Документ_пред_обр_год"] г.
Но дело в том, что тут серия не выводится. Есть только номер (Student."Номер_документа_о_пред_обр") и год (Student."Документ_пред_обр_год").
Если обратиться к Данные-Student, то серии там просто нет - её забыли добавить.
Зато серия эта есть в самой БД (test.db):



Таким образом, надо как-то в отчет добавить поле Students.dok_pred_seria, а как это сделать - ума не приложу. В исходниках нашел лишь процедуру по нажатию на кнопку редактор (SettingsUnit):
Код: procedure TSettingsForm.Button5Click(Sender: TObject);
begin
self.saveblank;
mainform.frxReport1.DesignReport();
self.Button3.Click;
end;
Автор: exteris
Дата сообщения: 19.05.2015 09:20
Добавь в контрольный черновик поле [Серия_документа_пред_образовании]

Добавлено:
Типа,

Цитата:
Номер и серия документа о предыдущем образовании, год выдачи: [Student."Номер_документа_о_пред_обр"] [Серия_документа_пред_образовании], [Student."Документ_пред_обр_год"] г.
Автор: The_Immortal
Дата сообщения: 19.05.2015 10:06
exteris, и всего-то!) А я-то думал, что придется что-то редактировать в исходниках пересобирать всё

Спасибо Вам огромнейшее!

А Вы не могли бы подсказать, каким образом Вы вышли на это поле? В самом дизайнере я такого поля не видел.
Автор: exteris
Дата сообщения: 19.05.2015 12:12
The_Immortal
В исходниках откопал.
Автор: vcrank
Дата сообщения: 14.06.2015 16:50
Доброго времени суток!
Подскажите пожалуйста, как в FastReport 5 вывести результат такого запроса:

Примерно в следующем виде:


т.е. надо объединить в одну ячейка данные из последней колонки
Автор: dimm78
Дата сообщения: 15.06.2015 03:22
vcrank

Самый простой вариант - запрос с группировкой используя LIST по 3 полю таблицы (со 2 рисунка) в качестве разделителя указать перевод строки. Еще есть вариант использовать в качестве 3 столбца таблицы вложенную таблицу - как это делать смотри в документации
Автор: vcrank
Дата сообщения: 15.06.2015 07:57

Цитата:
Самый простой вариант - запрос с группировкой используя LIST

Немогли бы вы чуть подробнее рассказать про LIST ? Я такого оператора в SQL (в PostgreSQL в данном случае) не припомню
Автор: miwa
Дата сообщения: 15.06.2015 09:12

Цитата:
Немогли бы вы чуть подробнее рассказать про LIST ? Я такого оператора в SQL (в PostgreSQL в данном случае) не припомню

Не знаю, как в PostrgreSQL, а в Firebird это встроенная функция.
Автор: mmlm10
Дата сообщения: 15.06.2015 09:54
vcrank
Можно скрыть повторяющиеся значения (SuppressRepeated = True) для первых двух колонок
Автор: dimm78
Дата сообщения: 15.06.2015 15:37
mmlm10
Такой вариант не прокатит т.к. во второй колонке могут быть одинаковые даты для двух разных фамилий.

vcrank
Для PostgreSQL аналог функции LIST это string_agg(<expression>, <delimiter>). Появилась начиная с версии 9.1
Автор: vcrank
Дата сообщения: 15.06.2015 15:48
dimm78
Спасибо, уже получилось найти эту функцию и модернизировать запрос.
Попробую предложенные варианты и остановимся на более красивом
Автор: Ruslang
Дата сообщения: 24.06.2015 09:31
Добрый день.
Есть база где в BLOB лежат отчеты. Я сохранил их на диск. С помощью FastReport3 не открываются, пишет Invalid File Format. Полагаю что там отчеты версии 2.5

Попытался сконвертировать их с помощью http://www.fast-report.com/pbc_download/fr2x-fr3converter.zip

Конвертировать отказывается, ругается:
"Report contains the following non-plugged components:
TfrMIDTable
You must include these components into your project."

Что делать?

PS. Пардон, файлы оказывается сконвертировались. Но что делать с этой ошибкой?
Автор: jvthegost
Дата сообщения: 16.10.2015 12:37
Добрый день. подскажите, столкнулся с проблемой, поиск результатов не дал.
Необходимо произвести печать данных на 2 принтера.
Реализовал таким образом:

Код: BlankfrxReport1.PrintOptions.ShowDialog:=False;
BlankfrxReport1.PrintOptions.Printer:='Canon LBP6020';
BlankfrxReport1.PrintOptions.
BlankfrxReport1.PrepareReport;
BlankfrxReport1.Print

Blank1frxReport1.PrintOptions.ShowDialog:=False;
Blank1frxReport1.PrintOptions.Printer:='Canon LBP6030/6040/6018L';
Blank1frxReport1.PrepareReport;
Blank1frxReport1.Print;
Автор: SergKhM
Дата сообщения: 22.10.2015 17:08
Добрый день. Первый раз столкнулся с такой проблемой - при открытии пакета frx модуль frxDesgn ругается на отсутствие класса TfrxTBPanel, TfrxComboBox и т.д. Сталкивался ли кто-нибудь? RAD 10 FastReport 5.2.3
Автор: marser
Дата сообщения: 22.10.2015 21:11
SergKhM
А зачем пакеты открывать? Вы хотите установить 5.2.3 на RAD Studio 10? Для этого есть recompile.exe. Только, по-моему, поддержка десятки начинается с версии FastReport 5.3.14
Автор: SergKhM
Дата сообщения: 22.10.2015 22:25
Да, хотелось. Посмотрел, что версия RAD Edition 5,1 вот и решил. На самом деле, все компилится отлично, но из-за этой ошибки при открытии окна редактирования выскакивает AV, а затем все работает. Как-то не очень комфортно
Автор: vcrank
Дата сообщения: 17.11.2015 16:39
Доброго времени суток.
Подскажите, как с помощью Fastreport можно отправить отчёт на почту через почтовый ящик на яндексе?
Вроде в frxMailExport порт указал 465, все остальные параметры тоже указаны верно (не нашёл опцию про TLS соединение и мой SMTP сервер требует аутентификацию)
Пытается отправить отчёт. После чего выдаёт окно ошибки, но без названия (просто пустое окно с красным крестом)
Использую Delhi XE7 и FR 5.3.16
Автор: protoror
Дата сообщения: 17.11.2015 21:17
vcrank
лучше используй бесплатные OverbyteIcs для отправки, примеров там куча.
Автор: vcrank
Дата сообщения: 18.11.2015 18:48
Спасибо. Постараюсь не забыть, когда это потребуется в следующий раз. А пока сделал через экспорт отчёта в PDF и отправка его с помощью Indy (тоже встретил определённый гемор, но вроде всё решилось)
Автор: IksanovaTP
Дата сообщения: 13.01.2016 05:37
Добрый день! Кто-нибудь может поделиться FastReport.net?
Автор: exteris
Дата сообщения: 13.01.2016 08:34
IksanovaTP
Вам в варезник.
Автор: AnViSe
Дата сообщения: 13.01.2016 11:53
Добрый день.
FastReport 5 и TfrxUniDACComponents завернуты в библиотеку.
Внешнее приложение подключает эту библиотеку и вызывает редактор отчета. Само приложение к БД подключается через такой же компонент TUniConnection.

Вопрос как можно передать коннекш к БД из внешнего приложения в библиотеку и использовать его, а не прописывать в каждом отчете подключение к БД?
Автор: Frodo_Torbins
Дата сообщения: 13.01.2016 12:31
AnViSe
Если библиотека и приложение скомпилированы в одной версии Делфи с рантайм пакетами, то можно просто ссылкой передавать.
В противном случае в библиотеке делать TfrxUserDataSet, и определять интерфейс для обращения к нужному датасету в приложении.
Автор: AnViSe
Дата сообщения: 13.01.2016 12:52
Frodo_Torbins
Для похожей задачи но с FibPlus вместо UniDac ссылку на конекшн передавал с помощью FibDatabase.Handle: TISC_DB_HANDLE немного допилив frxFIBComponents.

Здесь сходу не получилось, нет у TUniConnection свойства Handle...
Автор: Frodo_Torbins
Дата сообщения: 13.01.2016 14:14
AnViSe
Если в УниДаке взаимодействие с dll не предусмотрено, и ничего похожего на Handle нету, то передать конекшн не получится. Максимум можно в библиотеке создать его копию с теми же настройками, но это все равно будет другой конекшн.
Или, как я уже выше писал, самому придумать способ взаимодействия через границу dll. Возможно в этом случае удастся использовать какие-нибудь готовые технологии типа MIDAS.
Вообще эта проблема FastReport особо не касается, поэтому советую задать этот вопрос в другой теме. Может там найдутся люди, имеющие большой опыт с УниДаком, и они смогут подсказать хорошее решение.
Автор: AnGo
Дата сообщения: 05.02.2016 07:37
Коллеги!

Пытаюсь поставить FastReport.VCL.v5.3.16.Ent.FS на XE7

Все пакеты поставились правильно, а вот компиляция frxFIB21.bpl не проходит из-за ошибки
[dcc32 Error] frxFIBComponents.pas(98): E2168 Field or method identifier expected
[dcc32 Error] frxFIBComponents.pas(98): E2168 Field or method identifier expected
ссылка вот на эту строку:
property FetchAll: boolean Read GetFetchAll write SetFetchAll;

Кто-нибудь может помочь в решении проблемы?
Автор: jonikDk
Дата сообщения: 05.02.2016 15:05

Цитата:
GetFetchAll write SetFetchAll

эти методы в классе есть?
Ошибка вроде как пустяковая, просто внимательно класс посмотреть

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859

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


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