Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.03.25;
Скачать: [xml.tar.bz2];

Вниз

FastReport   Найти похожие ветки 

 
dzhagr ©   (2007-02-28 18:59) [0]

Подскажите, пожалуйста, что нужно, чтобы запустить самый простой отчет. Я расположил на форме frReport1: TfrReport; Вызываю процедуру frreport1.showreport; ничего не происходит. Может надо что-то еще? Или в чем еще может быть ошибка? Спасибо.


 
easy ©   (2007-02-28 20:49) [1]

с фастрепортом идёт подробнейший мануал на русском


 
dzhagr ©   (2007-02-28 22:07) [2]

да че-то не получается.


 
easy ©   (2007-02-28 23:02) [3]

перед showreport этот report надо туда загрузить. либо из файла, либо в dfm -e его сохранять, тогда он сам подгрузится


 
dzhagr ©   (2007-02-28 23:35) [4]

Вот проблема, когда из файла. Я так понял, надо storeindfm оставить false. В дизайнере открыть файл .rfr. А что еще нужно сделать чтоб работала?


 
ASoft   (2007-03-01 03:40) [5]


> А что еще нужно сделать чтоб работала?

надо отчет заполнить :)


 
dzhagr ©   (2007-03-01 21:25) [6]

Вобщем оставил я в frreport в форме. Заполняю отчет при помощи fruserdataset. Вот тут проблема. Каким вообще образом устанавливается связь переменных формы с отчетом?


 
DrPass ©   (2007-03-02 01:25) [7]


> Каким вообще образом устанавливается связь переменных формы
> с отчетом?

По-разному. Например, через событие OnGetValue. Непохоже, что ты читал документацию...


 
dzhagr ©   (2007-03-02 11:38) [8]

Ну, если честно, то не всю. Вот, например, читаю fruserdataset, там вообще ничего нет про передачу. Такое ощущение, там все про базы данных.


 
ASoft   (2007-03-02 12:07) [9]


> Такое ощущение, там все про базы данных.

это основная функция FR - работа с базами данных :).
Простая передача данных в мемо поля FR перед show, к примеру,
fr.Pages[0].FindObject("memo1").Memo.Text:=<var variant>


 
ASoft   (2007-03-02 12:08) [10]

с приведением типов, ессно


 
easy ©   (2007-03-02 15:52) [11]

6.1. ИСПОЛЬЗОВАНИЕ ДАННЫХ ИЗ НЕ-БД ИСТОЧНИКОВ. СОБЫТИЯ
 Часто данные нужно извлекать из других источников, не имеющих отношения к базам данных (например, файл, массив и т.п.). Для этих целей служит компонент TfrUserDataset, генерирующий события OnFirst, OnNext, OnCheckEOF. Кроме того, придется писать обработчики событий OnGetValue, OnEnterRect компонента TfrReport.

 Обработчик события OnGetValue вызывается каждый раз, когда в тексте объекта встречается переменная и нужно получить ее значение. Если переменной сопоставлено значение, то она обрабатывается внутренним обработчиком компонента. Иначе нужно подключать внешний обработчик, например:

procedure TForm1.Doc1GetValue(const ParName: string; var ParValue: Variant);
begin
  if ParName = "Var1" then
    ParValue := "1"
  else if ParName = "Var2" then
    ParValue := 2
end;

 Обработчик события OnEnterRect вызывается перед прорисовкой любого объекта. Обычно он используется для того, чтобы загрузить в объект содержимое Memo-поля или картинки из БД. Пример обработчика:

procedure TForm1.Doc1EnterRect(Memo: TStringList; View: TView);
begin
  if Memo.Count > 0 then
    if Memo[0] = "[Memo]" then
      Memo.Assign(Table1Memo)
    else if (Memo[0] = "[Picture]") and (View is TPictureView) then
     (View as TPictureView).Picture.Assign(Table1Picture);
end;

Обработчик события OnUserFunction вызывается, когда в тексте объекта обнаружена переменная или выражение, содержащее вызов функции. Функция может иметь до 3-х параметров любого типа. Пример обработчика:

procedure TForm1.Doc1UserFunction(const name: string; p1, p2, p3: Variant;
 var val: string);
var
  d: Double;
begin
 if name <> "CRAZYMONEY" then exit;
 d := Parser.Calc(p1);
 // для использования парсера необходимо включить в список uses
 // FR_Pars.pas
 if d > 10000 then
   val := """" + FormatFloat("#,##0.00",d) + " - нифига себе!" + """"
 else
   val := """" + FormatFloat("#,##0.00",d) + """";
 // результат - это _форматированная_ строка, поэтому заключаем в кавычки
end;

 Для навигации по источникам данных, не имеющим отношения к БД (например, массивам), используется компонент TfrUserDataset, расположенный на палитре компонентов FR. Он генерирует события OnFirst, OnNext, OnCheckEOF, назначение которых, думаю, понятно. Пример использования см. в демо, отчет с переменным количеством столбцов (cross-tab).


 
dzhagr ©   (2007-03-02 18:23) [12]

Спасибо огромнейшее!!! Буду спокойно спать))



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.03.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.044 c
2-1172676429
Slimer
2007-02-28 18:27
2007.03.25
TQuery


15-1172747108
Vlad Oshin
2007-03-01 14:05
2007.03.25
Как осуществляется вывод cgi в окно браузера? Механизм интересует


2-1172482647
SpellCaster
2007-02-26 12:37
2007.03.25
Глобальные переменные в нитях


15-1172727214
Рафик с рынка
2007-03-01 08:33
2007.03.25
Нужна помощь


1-1170348097
Dreamse
2007-02-01 19:41
2007.03.25
Запуск программы от имени другого пользователя





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский