Как програмно добавить Chart в середину отчета

отредактировано 13:57 Раздел: FastReport 4.0
Раньше пользовался QuickReport, вот есть необходимость перейти на FastReport, здесь больше возможностей.
Разработка ведется в Delphi 2010, FastReport 4.10.5

Графики необходимо было добавить в середину отчета. Сделал так: начало загрузил из файла, середину создаю программно (графики в цикле) , окончание загрузил из второго файла.
Но есть некоторые глюки.
  
   frxReportM.Clear; 
   frxReportM.PrepareReport(True); 
   frxReportM.LoadFromFile(DM.ApplPatch+'BookMS01.fr3'); 
  
  DM.qibBookV.First; 
   while not DM.qibBookV.Eof do 
   begin 
     with DM.qibBookO do 
     begin 
       Close; 
       SQL.Clear; 
       SQL.Add('select * from BookO O'); 
       SQL.Add('where '); 
       {SQL.Add('(IDVYBORKA = NVYBORKA ) '); 
       SQL.Add('and '); 
       } 
       SQL.Add('(O.IDVYBORKA = '''+DM.qibBookV.FieldByName('NVYBORKA').AsString+''') '); 
       SQL.Add('order by O.IDVYBORKA, O.NOBRAZEC'); 
       Open; 
       FetchAll; 
     end; 
      
     //далее пропускаю сам код вывода графиков  
     //DataSet:=frxDBDatasetBV; 
      //создаю страницу 
      //график по первому критерию 
  
      //создаю страницу для следующего графика 
      //график по второму критерию 
       
      DM.qibBookV.Next; 
     frxReportM.PrepareReport(False); 
    
   end; 
  
   frxReportM.LoadFromFile(DM.ApplPatch+'BookMS02.fr3'); 
   frxReportM.PrepareReport(False); 
  
   frxReportM.ShowPreparedReport; 
  


Получается что данные для графика берутся только из последнего запроса
И все пары графиков получаются одинаковыми (по первому и второму параметру) .
И в последнем отчете (таблица) тоже данные из последнего запроса.
Что сделал не так?

Пытался сохранять в массив TMemoryStream а потом после цикла выводить, получается та же ерунда, сохраняется шаблон (.fr3) а данные из последнего query запроса.
Буду пытаться создать динамические массивы компонентов может это поможет...

Комментарии

  • gpigpi
    отредактировано 13:57
    написал:
    //создаю страницу
    //график по первому критерию

    //создаю страницу для следующего графика
    //график по второму критерию
    Покажите Ваш код, а лучше выложите тестовый проект, демонстрирующий проблему

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.