Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > fastreport загрузка картинок из папки


Автор: Akella 18.12.2008, 00:00
Есть отчёт, который строится по одной записи из таблицы базы данных.
http://www.ra-codecraft.com.ua/images/stories/kvx/kon1_400.png

Есть папка, я знаю путь к ней. В этой папке могут жить картинки и подпапки , в подпапках могут жить тоже картинки.
Так вот. Нужно все эти картинки вывести ниже таблицы.
Как это лучше сделать?  Может есть примеры?

Допусти, ниже бэнда MasterData что нужно кинуть в отчёт? Или frxPictureView можно создавать прямо в MasterData? Лучше всё это реализовывать прямо в отчёте скриптом или непосредственно в дельфи?

FR 4.7.1, D2007, FIB+.


Какие данные от меня ещё могут потребоваться для ускорения решения задачи smile 

Автор: jsa 18.12.2008, 06:51
Цитата(Akella @  18.12.2008,  05:00 Найти цитируемый пост)
Нужно все эти картинки вывести ниже таблицы.Как это лучше сделать?  Может есть примеры?

можно сделать так:
1 - получить список всех картинок в папках и подпапках
2 - а ФР есть примеры как можно вывести список данных, сформированных вручную, а можно поместить список в виртуальный датасет(например kbmMemTable вроде как был фриварный, сейчас не знаю, help платный) и подключить этот датасет в шаблоне

Цитата(Akella @  18.12.2008,  05:00 Найти цитируемый пост)
ниже бэнда MasterData что нужно кинуть в отчёт

3 - как ни странно, но... тоже мастердата, в него положить объект картинку
4 - в коде отчата обрабатывать событие OnAfterData(при использовании датасета) - у картики(объект в отчете) есть метод loadfromfile, при обработке списка - курить примеры из фастрепорта

Добавлено через 1 минуту и 6 секунд
5 - в конечном итоге все сведется к тому загрузке картинок в самом отчете

Автор: Akella 18.12.2008, 09:00
Цитата(jsa @  18.12.2008,  06:51 Найти цитируемый пост)
а можно поместить список в виртуальный датасет

а это идея  smile +1

Добавлено через 2 минуты и 6 секунд
Цитата(jsa @  18.12.2008,  06:51 Найти цитируемый пост)
4 - в коде отчата обрабатывать событие OnAfterData(при использовании датасета) - у картики(объект в отчете) есть метод loadfromfile, при обработке списка - курить примеры из фастрепорта

дык если будет MemTable, то можно загрузить картинки в блобы таблицы...

Автор: jsa 18.12.2008, 10:03
Цитата(Akella @  18.12.2008,  14:00 Найти цитируемый пост)
дык если будет MemTable, то можно загрузить картинки в блобы таблицы

главное чтобы метаб умел блобы

Автор: Akella 18.12.2008, 10:27
Ну... будем посмотреть

Автор: Akella 18.12.2008, 10:56
У dxMemData есть не только Blob, а ещё и Graphic. smile 
Единственный минус в том, что в этом случае каждая картинка будет жить в памяти дважды: в наборе данных и в самом отчёте smile 

Автор: jsa 18.12.2008, 11:40
Цитата(Akella @  18.12.2008,  15:56 Найти цитируемый пост)
Единственный минус в том, что в этом случае каждая картинка будет жить в памяти дважды: в наборе данных и в самом отчёте

c чего ради?

Автор: Akella 18.12.2008, 13:55
Не знаю, мне так кажется.

Автор: jsa 18.12.2008, 16:47
Цитата(Akella @  18.12.2008,  18:55 Найти цитируемый пост)
Не знаю, мне так кажется.

мне кажется что TfrxDBDataset это лишь надстройка над стандартными датасетами

Автор: Akella 18.12.2008, 16:52
Ну да, это как связующее звено со своими вкусностями. Но картинка будет ведь храниться не только в блобе, а ещё и на страничках отчёта? А это же кушает память.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)