![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
FastReport? howto... [D6, Win2k]
ilXAM © (2002-05-20 11:42:00)Здравствуйте.
Помогите, пожалуйста разобраться с фаст репортом.
Вопрос:
Как вывести на печать, не значение из базы данных, а например напечатать значение лейбла и т.п.
Если можно, детально объяснить, то буду вам очень благодарен :-)
ilXAM (2002-05-21 09:12:00) [1]Не могли бы вы выслать мне на почту эти отчеты.
ilXAM (2002-05-21 07:01:00) [2]спасибо всем за ответы.
К сожалению, у меня отсутствовали данные файлы помощи.
Slava (2002-05-20 14:14:00) [3]Это была выдержка из файла FAQ.RUS из поставки FastReport
Slava (2002-05-20 14:13:00) [4]Q: Как передать значение из программы в отчет?
A: Есть несколько способов. Первый: использовать глобальный объект
frVariables (описан в FR_Class):
frVariables["My variable"] := 10;
создает переменную My variable со значением 10. Это способ подходит,
если в отчет нужно передать статическую информацию (т.е. не меняющуюся
в течение построения отчета).
Второй способ: использовать событие TfrReport.OnGetValue. Этот способ
подходит для передачи в отчет информации, которая может меняться от
записи к записи:
procedure TForm1.frReport1GetValue(ParName: String; var ParValue: Variant);
begin
if ParName = "MyField" then
ParValue := Table1MyField.Value;
end;
И, наконец, третий способ: программно заполнить список переменных
(см. предыдущий вопрос).
with frReport1.Dictionary do
begin
Variables["MyVariable"] := "CustomerData.Customers."CustNo"";
Variables["Another Variable"] := "10";
end;
Anatoly Podgoretsky (2002-05-20 12:24:00) [5]А FastReport разве не позволяет доступ к переменным любого модуля и к свойствам метки в рантайм.
Tkach_ (2002-05-20 12:11:00) [6]В этом случае нужно использовать frUserDataset и обрабатывать событие frReport -> onGetValue.
В руководстве, кстати, довольно доходчиво описано, как это сделать. Раздел "Использование данных из не-БД источников"