AV при дизайне отчета в рантайм

alralr
отредактировано 07:40 Раздел: FastReport 3.0
Дизайн отчета в рантайме.
Проблема:
1. Создаем диалоговую страницу, на нее бросаем, например, frxADOQuery.
2. Пытаемся Мастер-бэнду установить датасет через инспектор объектов - все ОК.
3. Сохраняем отчет в файл.
4. Загружаем этот же отчет из файла.
5. Пробуем п.2 - AV

Вариант фикса:
procedure TfrxDataSetProperty.GetValues;
var
  i: Integer;
  r: TfrxReport;
begin
  inherited;
  r := frComponent.Report;
  if r <> nil then
    r.GetDataSetList(Values, true);
//  for i := 0 to r.DataSets.Count - 1 do
//    Values.Add(r.DataSets[i].DataSet.UserName);
end;

Комментарии

  • alralr
    отредактировано 07:40
    Поторопился. Не повторилось, если строить с нуля. Повторяется на конвертированном отчете.

    Однако, все равно не понятно, почему TfrxDataSetProperty.GetValues и TfrxDataTreeForm.FillDataTree получают датасеты разными способами.
  • отредактировано 07:40
    Возможно потому, что эти куски кода писались с интервалом в года полтора.
  • alralr
    отредактировано 07:40
    Понятно:)
    С проблемой AV удалось добиться устойчивого повторения. Куда можно прислать тестовый пример?
  • отредактировано 07:40
    на tz@fast-report.com

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

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